2024年5月25日发(作者:)
C语言三种预处理功能
1. 宏定义
2. 文件包含
3. 条件编译
伪指令(或预处理指令)定义:
预处理指令是以#号开头的代码行。#号必须是该行除了任何空白字符外的第一个字
符。#后是指令关键字,在关键字和#号之间允许存在任意个数的空白字符。整行语句构
成了一条预处理指令,该指令将在编译器进行编译之前对源代码做某些转换。下面是部分
预处理指令:
指令 用途 # 空指令,无任何效果 #include 包含一个源代码文件 #define 定义宏
#undef 取消已定义的宏 #if 如果给定条件为真,则编译下面代码 #ifdef 如果宏已经定
义,则编译下面代码 #ifndef 如果宏没有定义,则编译下面代码 #elif 如果前#if条件不
为真,当前条件为真,则编译下面代码,其实就是else if的简写 #endif 结束一个
#if……#else条件编译块 #error 停止编译并显示错误信息
特殊符号
预编译程序可以识别一些特殊的符号。预编译程序对于在源程序中出现的这些串将用
合适的值进行替换。
注意,是双下划线,而不是单下划线 。
FILE 包含当前程序文件名的字符串
LINE 表示当前行号的整数
DATE 包含当前日期的字符串
STDC 如果编译器遵循ANSI C标准,它就是个非零值
TIME 包含当前时间的字符串
//例
#include
printf("%dn",__LINE__); return 0; }
1. 宏定义
不带参数
宏定义又称为宏代换、宏替换,简称“宏”。预处理(预编译)工作也叫做宏展开:
将宏名替换为字符串, 即在对相关命令或语句的含义和功能作具体分析之前就要换。
格式:
发布者:admin,转转请注明出处:http://www.yc00.com/web/1716588375a2728643.html
评论列表(0条)