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

文章目录

预定义符号

在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;
}

运行结果为:

相关推荐
AI科技星23 分钟前
数术工坊・八卷全书(番外・实战升华副卷)【终极典藏定稿|完整无删减】
c语言·开发语言·网络·量子计算·agi
LuminousCPP1 小时前
数据结构 - 单链表第一篇:单链表基础操作
c语言·数据结构·经验分享·笔记·学习
WL学习笔记1 小时前
通讯录(顺序表实现)
c语言·数据结构·算法
不会C语言的男孩1 小时前
Linux 系统编程 · 第 1 章:Linux 系统概述
c语言·开发语言
2601_951645741 小时前
C语言环境搭建指南
c语言·编译器·开发环境·helloworld·集成开发环境
SongYuLong的博客1 小时前
openWRT补丁文件生成
c语言
小糯米6012 小时前
C语言文件操作
c语言·开发语言·数据结构
玖玥拾2 小时前
C/C++ 数据结构(四)链表与STL容器
c语言·数据结构·c++·链表·stl库
玖玥拾3 小时前
C/C++ 数据结构(一)基础概念、线性表链表
c语言·数据结构·c++·链表
QiLinkOS3 小时前
极客精神与商业思维的融合实践(3)
c语言·c++·人工智能·算法·开源协议