C/c++几个预定义的宏:__DATE__,__TIME__,__FILE__,__LINE__
2015-07-21 10:22
357 查看
一边情况下,C/C++编译器会内置几个宏,这些宏定义不仅可以帮助我们完成跨平台的源码编写,灵活使用也可以巧妙地帮我们输出非常有用的调试信息。
ANSI C标准中有几个标准预定义宏(也是常用的):
__LINE__:在源代码中插入当前源代码行号;
__FILE__:在源文件中插入当前源文件名;
__DATE__:在源文件中插入当前的编译日期
__TIME__:在源文件中插入当前编译时间;
__STDC__:当要求程序严格遵循ANSI C标准时该标识被赋值为1;
__cplusplus:当编写C++程序时该标识符被定义。
ANSI C标准中有几个标准预定义宏(也是常用的):
__LINE__:在源代码中插入当前源代码行号;
__FILE__:在源文件中插入当前源文件名;
__DATE__:在源文件中插入当前的编译日期
__TIME__:在源文件中插入当前编译时间;
__STDC__:当要求程序严格遵循ANSI C标准时该标识被赋值为1;
__cplusplus:当编写C++程序时该标识符被定义。
#include <stdio.h> int main(void) { int answer; // __DATE__, __TIME__, __FILE__, __LINE__ 为预定义宏 printf("Date : %s\n", __DATE__); printf("Time : %s\n", __TIME__); printf("File : %s\n", __FILE__); printf("Line : %d\n", __LINE__); printf("Enter 1 or 0 : "); scanf("%d", &answer); // 这是一个条件表达式 printf("%s\n", answer?"You said YES":"You said NO"); }
相关文章推荐
- 浅析pragma once与include guard
- C语言之字符串模糊查询方法的实现
- c++运算符重载之数据间的类型转换
- (转)C++文件的批处理——批量文件增删改查
- MFC中C++类如何封装API
- C++学习笔记碎屑--结构体与构造函数
- C++中static关键字的总结
- 黑马程序员_C语言基础_关键字、printf函数、scanf函数
- VC++ 多线程模拟鼠标点击
- (转)C++中虚函数功能的实现机制
- C++多态性
- PAT (Basic Level) Practise (中文)1003. 我要通过!(20) C语言
- PAT (Basic Level) Practise (中文)1002. 写出这个数 (20) C语言
- PAT (Basic Level) Practise (中文)1001. 害死人不偿命的(3n+1)猜想 (15) C语言
- log4cxx配置使用(二)
- PAT (Basic Level) Practise (中文)1020. 月饼 (25) C语言
- YTU-OJ-Problem I: 熟悉题型——类设计( 矩形类定义【C++】)
- 线性链表的创建 C语言
- PAT (Basic Level) Practise (中文)1022. D进制的A+B (20) C语言
- YTU-OJ-Problem D: C++习题 虚函数-计算图形面积