_STDC _cdecl

来源:互联网 发布:office for mac怎么用 编辑:程序博客网 时间:2024/06/05 10:19

 

__STDC__是预定义宏。当它被定义后,编译器将按照ansic标准来编译你的c程序。

ANSIC标准定义了以下6种可供C语言使用的预定义宏:  
      __LINE__                       在源代码中插入当前源代码行号  
      __FILE__                        在源代码中插入当前源代码文件名  
      __DATE__                       在源代码中插入当前编译日期〔注意和当前系统日期区别开来〕  
      __TIME__                        在源代码中插入当前编译时间〔注意和当前系统时间区别开来〕        
      __STDC__                        当要求程序严格遵循ANSIC标准时该标识符被赋值为1。  
      __cplusplus   

 

标识符__LINE__和__FILE__通常用来调试程序;   
标识符__DATE__和__TIME__通常用来在编译后的程序中加入一个时间标志,以区分程序的不同版本;   
当要求程序严格遵循ANSIC标准时,标识符__STDC__就会被赋值为1;   
当用C++编译程序编译时,标识符__cplusplus就会被定义。

 

 

__cdecl 是C DECLaration的缩写(declaration,声明),表示C语言默认的函数调用方法:所有参数从右到左依次入栈,这些参数由调用者清除,称为手动清栈。被调用函数不会要求调用者传递多少参数,调用者传递过多或者过少的参数,甚至完全不同的参数都不会产生编译阶段的错误。