C标准中一些预定义的宏

简介: C标准中指定了一些预定义的宏,对于编程经常会用到。下面这个表中就是一些常常用到的预定义宏。  宏(双下滑线)      意义  __DATE__  进行预处理的日期(“Mmm dd yyyy”形式的字符串文字)  __FILE__   代表当前源代码文件名的字符串文字  __LINE__  代表当前源代码中的行号的整数常量  __TIME__  源文件编译时间,格式微“hh:mm:ss”  __func__   当前所在函数名  对于__FILE__,__LINE__,__func__这样的宏,在调试程序时是很有用的,因为你可以很容易的知道程序运行到了哪个文件的那一行,是哪个函数。

 C标准中指定了一些预定义的宏,对于编程经常会用到。下面这个表中就是一些常常用到的预定义宏。
  (双下滑线)      意义
  __DATE__  进行预处理的日期(“Mmm dd yyyy”形式的字符串文字)
  __FILE__   代表当前源代码文件名的字符串文字
  __LINE__  代表当前源代码中的行号的整数常量
  __TIME__  源文件编译时间,格式微“hh:mm:ss”
  __func__   当前所在函数名
  
对于__FILE__,__LINE__,__func__这样的宏,在调试程序时是很有用的,因为你可以很容易的知道程序运行到了哪个文件的那一行,是哪个函数。
   下面一个例子是打印上面这些预定义的宏的。
  #include <stdio.h>
  #include <stdlib.h>
  void why_me();
  int main()
  {
   printf( "The file is %s.\n", __FILE__ );
   printf( "The date is %s.\n", __DATE__ );
   printf( "The time is %s.\n", __TIME__ );
   printf( "This is line %d.\n", __LINE__ );
   printf( "This function is %s.\n", __func__ );
   
   why_me();
   
   return 0;
  }
  void why_me()
  {
   printf( "This function is %s\n", __func__ );
   printf( "The file is %s.\n", __FILE__ );
   printf( "This is line %d.\n", __LINE__ );
  }

相关文章
|
1月前
|
编译器
预定义宏
预定义宏。
26 11
|
7月前
|
自然语言处理 编译器 程序员
C基础语法(编译与预定义)
C基础语法(编译与预定义)
45 0
|
1月前
|
Shell Linux
Linux系统中预定义文件的执行顺序和依赖关系
Linux系统中预定义文件的执行顺序和依赖关系
18 1
|
1月前
预定义字符集
预定义字符集
17 1
|
6月前
|
Shell
makefile 自定义,预定义函数
makefile 自定义,预定义函数
41 0
|
6月前
|
JavaScript 前端开发 Java
61jqGrid - 表单预定义函数
61jqGrid - 表单预定义函数
24 0
|
7月前
|
并行计算 PHP
PHP 预定义常量
PHP 预定义常量
24 0
|
11月前
|
前端开发
5月18日,预定你了!
5月18日,预定你了!
|
Shell
C编译中如何向代码中传递一个预定义字串
C编译中如何向代码中传递一个预定义字串
55 0
|
缓存
系统预定义流指针
系统预定义流指针
151 0