预处理详解(一)---预定义符号

文章目录

预定义符号

在C语言中,有一些有意思的预定义符号,这些预定义符号都是语言内置的,即以及定义好的,我们可以直接使用。预定义符号主要有以下几个:

c 复制代码
__FILE__        //进行编译的源文件
__LINE__        //文件当前的行号
__DATE__        //文件被编译的日期
__TIME__        //文件被编译的时间
__FUNCTION__    //进行编译的函数
__STDC__        //如果编译器遵循ANSI C,其值为1,否则未定义

这些预定义符号是已经用#define定义好的,在代码运行后的预处理阶段会被替换为相应的内容。

预定义符号的使用

这些预定义符号的使用方法一致,只是需要注意打印的格式是%s还是%d就行了。

例如,运行以下代码:

c 复制代码
#include <stdio.h>
int main()
{
	printf("%s\n", __FILE__);
	printf("%d\n", __LINE__);
	printf("%s\n", __DATE__);
	printf("%s\n", __TIME__);
	printf("%s\n", __FUNCTION__);
	//printf("%d\n", __STDC__);
	//因为VS2013不遵循ANSI C,该符号未定义,所以进行了注释
	return 0;
}

运行结果为:

相关推荐
leo__5201 小时前
基于C语言的FOC算法核心模块实现
c语言·算法·机器学习
培林将军2 小时前
C语言指针
c语言·开发语言·算法
Batac_蝠猫3 小时前
C - 内存缓存池2
c语言
cchjyq3 小时前
嵌入式按键调参:简洁接口轻松调参(ADC FLASH 按键 屏幕参数显示)
c语言·c++·单片机·mcu·开源·开源软件
无限进步_3 小时前
【C语言】堆(Heap)的数据结构与实现:从构建到应用
c语言·数据结构·c++·后端·其他·算法·visual studio
xyd陈宇阳3 小时前
C 语言宏定义(#define)语法与用法大全
c语言·嵌入式硬件
黎雁·泠崖3 小时前
【线性表系列入门篇】从顺序表到链表:解锁数据结构的进化密码
c语言·数据结构·链表
JeffDingAI3 小时前
【CANN训练营】在CANN8.5上体验Hello World开启Ascend C学习
c语言·开发语言·人工智能·学习
松涛和鸣4 小时前
45、无依赖信息查询系统(C语言+SQLite3+HTML)
c语言·开发语言·数据库·单片机·sqlite·html
苦藤新鸡4 小时前
2.字母异位词分组
c语言·c++·力扣·哈希算法