散文文字゚灵感💋💅世间语

C/C++知识点分享(7)

2019-07-03  本文已影响2人  307656af5a04

1.main 主函数执行完毕后,是否可能会再执行一段代码,给出说明?

解析:

可以,可以用_onexit 注册一个函数,它会在main 之后执行

int fn1(void), fn2(void), fn3(void), fn4 (void); 

void main( void ) 
{ 
    String str("zhanglin"); 
    _onexit( fn1 ); 
    _onexit( fn2 );
    _onexit( fn3 ); 
    _onexit( fn4 ); 
    printf( "This is executed first.\n" ); 
} 
int fn1() { printf( "next.\n" );return 0; } 
int fn2(){printf( "executed " ); return 0; } 
int fn3() { printf( "is " ); return 0; } 
int fn4() { printf( "This " ); return 0; }

2.int id[sizeof(unsigned long)]; 这个对吗?为什么??

解析:对,这个 sizeof是编译时运算符,编译时就确定了可以看成和机器有关的常量。


3.如何打印出当前源文件的文件名以及源文件的当前行号?

解析:

cout << __FILE__ ;
    
cout<<__LINE__ ;

//__FILE__和__LINE__

// 是系统预定义宏,这种宏并不是在某个文件中定义的
// 而是由编译器定义的
上一篇 下一篇

猜你喜欢

热点阅读