预定义宏就是已经预先定义好的宏,我们可以直接使用,无需再重新定义。 ANSI C 规定了以下几个预定义宏,它们在各个编译器下都可以使用: __LINE__:表示当前源代码的行号; __FILE__:表示当前源文件的名称; __DATE__:表示当前的编译日期; __TIME__:表示当前的编译时间; __STDC__:当要求程序严格遵循ANSI C...
宏定义又称为宏代换、宏替换,简称为宏。是 C 语言中最为常用的三种预处理指令之一。宏定义指令,是由 # 和关键字 define 组合而成的。它的作用是文本替换,使用标识符来代替替换列表中的内容。使用宏定义可以提高程序的通用性、易读性,减少因为输入错误产生的各种问题,同时还便于修改。例如:此处定义了一个宏...
预定义宏在以下场景中非常有用: 调试信息:通过__FILE__和__LINE__宏,您可以在调试过程中打印当前源文件和行号,帮助定位代码问题。 日志记录:使用__DATE__和__TIME__宏,您可以在日志中记录当前日期和时间,方便追溯日志发生的时刻。 函数名标识:通过__func__宏,您可以在函数中输出当前函数的名字,有助于代码...
通过预定义宏,程序员使用“#ifdef”与“#endif”等预处理指令,就可使平台相关代码只在适合于当前平台的代码上编译,从而在同一套代码中完成对多平台的支持。从这个意义上讲,平台信息相关的宏越丰富,代码的多平台支持越准确。 2、C标准预定义宏 标准C 语言提供的一些标准预定义宏如表 1 所示。
主要处理#开始的预编译指令,预编译指令指示了在程序正式编译前就由编译器进行的操作,可以放在程序中的任何位置。 C 编译系统在对程序进行通常的编译之前,首先进行预处理。 C 提供的预处理功能主要有以下三种: 1 )宏定义。 2 )文件包含。 3 )条件编译。
宏定义又称为宏代换、宏替换,简称为宏。是 C 语言中最为常用的三种预处理指令之一。宏定义指令,是由 # 和关键字 define 组合而成的。宏定义其实就是简单的文本替换,使用宏定义可以提高程序的通用性、易读性,减少多次使用改文本造成容易写错的情况,如果一个项目中多个地方都用到同一个数据或者变量,可以用宏定义...
预定义宏可以提供有关源文件、行号、日期、时间和函数名等信息,对于调试和日志记录非常有用。 一、人物简介 第一位闪亮登场,有请今后会一直教我们C语言的老师 —— 自在。 第二位上场的是和我们一起学习的小白程序猿 —— 逍遥。 二、功能介绍 以下是本教程中介绍的预定义宏: __FILE__:当前源文件的文件名。
有几个细节需要注意,空行和注释都会被__LINE__统计,#line n中的n可以用__LINE__,表示下一行的行号变为__LINE__的值,n只能是整数常量,不能是表达式。运行效果如图:预定义宏 前面已经介绍了2个预定义宏__LINE__和__FILE__,现在我们再介绍几个重要的预定义宏的用法:__STDC_VERSION__long 类型的...
定义 一,不带参数的宏定义 不带参数的宏定义是比较简单的,就是用一个指定的标识符来代表一个字符串。它的一般形式为; #define 标识符 字符串 例如 #define E 2.718281828459 它的作用是在本程序文件中用指定的标识符E来代替2.718281828459这个字符串。在进行预处理时,将程序中凡是在该指令以后出现的所有的E都用...