编译器内置宏:

先介绍几个编译器内置的宏定义,这些宏定义不仅可以帮助我们完成跨平台的源码编写,灵活使用也可以巧妙地帮我们输出非常有用的调试信息。

ANSI C标准中有几个标准预定义宏(也是常用的):

__LINE__:在源代码中插入当前源代码行号;

__FILE__:在源文件中插入当前源文件名;

__DATE__:在源文件中插入当前的编译日期

__TIME__:在源文件中插入当前编译时间;

__STDC__:当要求程序严格遵循ANSI C标准时该标识被赋值为1;

__cplusplus:当编写C++程序时该标识符被定义。

编译器在进行源码编译的时候,会自动将这些宏替换为相应内容。

转载于:https://www.cnblogs.com/BBOOT/p/3771442.html

__iLINE__和__FILE__等内置宏的含义相关推荐

  1. C语言~宏操作大全(宏定义、内置宏、__FILE__、__LINE__、##用法)

    当然宏定义非常重要的,它可以帮助我们防止出错,提高代码的可移植性和可读性等.下面列举一些成熟软件中常用得宏定义1,防止一个头文件被重复包含 #ifndef COMDEF_H #define COMDE ...

  2. 巧用可变参数宏、编译器内置宏和printf输出调试信息

    前言: 我们在写程序的时候,总是或多或少会加入一些printf之类的语句用于输出调试信息,但是printf语句有个很不方便的地方就是当我们需要发布程序的时候要一条一条的把这些语句删除,而一旦需要再次调 ...

  3. C语言宏定义、宏函数、内置宏与常用宏

    前言: 在C语言中,变量类型.循环控制.基础语法等与其他高级语言基本无异:而C语言(C++)特有的两把双刃剑指针和宏定义/宏函数使得C语言在底层开发中披荆斩棘.无所不能.这两个概念涉及范围比较广,其分 ...

  4. linux系统中查看gcc内置宏定义的命令方法

    GNU C预定义了一系列的宏,这些宏都是以双下划线开始的 查看内置宏的命令 gcc -dM -E - < /dev/null [qipa250@localhost ~]$ gcc -dM -E ...

  5. 搜索一个问题 C、C++判断操作系统 是 Linux还是windows 还是Unix【编译器内置宏 探索(不是特别满意)】...

    得到的答案 都不好.为什么,因为他们都不知道原理.其实原理很简单,编译器 参数或Makefile添加了宏定义,你才可以这样去判断. 比如编译器设置了宏 is_windows,你才能去用.不设置没法用. ...

  6. unity android 宏定义,Unity各平台内置宏定义

    属性 方法 UNITY_EDITOR #define directive for calling Unity Editor scripts from your game code. UNITY_EDI ...

  7. 剑网3官方(内置)宏语法说明---(转自令狐志超帖子)

    官方宏界面入口: 系统菜单(ESC键)-宏管理 宏指令使用规则: /动作指令 [条件1|条件2&条件3] 动作指令参数 多个条件,用符号"|"或符号"&& ...

  8. c语言编译器自带宏定义,C/C++中内置的宏定义

    (1)跨平台的使用 C++:编写跨平台程序的关键,C/C++中的内置宏定义 分两部分: 操作系统判定: Windows: WIN32 Linux: linux Solaris: __sun 编译器判定 ...

  9. Python基础12-常用的内置函数

    abs 取绝对值,数学上的绝对值 print(abs(-1)) all 接收一个可迭代参数.如果里面有一个False的元素,那么返回值就是False,否则返回True,类似逻辑"与" ...

最新文章

  1. 使用级联功能实现蓝绿部署和金丝雀发布
  2. 怎样把做好的css样式改日期,Win8操作系统任务栏中日期样式怎么更改
  3. sql批量修改字段内容的语句-SQL技巧
  4. powerbi导入地图_Power BI系列教程之powerBI功能介绍及使用导引(一)
  5. ipsec *** 的总结性谈论
  6. 你会为了好工作和优质配偶整容吗?
  7. 李彦宏:属于百度的日子终于来了,曾与Facebook谈建合资公司
  8. 初识NB-IoT的机卡绑定
  9. Opencv中Get2D()与cvSet2D() 的坐标问题
  10. 电脑无线网络显示红叉_Maxidix Wifi Suite下载_无线网络管理软件中文版v14.5.8
  11. angular 和 backbone 区别
  12. 安卓修改软件安装时间_WPS 2019软件安装教程
  13. awg线径与电流_AWG线规—导线外径(MM)与电流(A)对照
  14. 企业信息化到底是不是一把手工程
  15. 计算机类毕业设计选题推荐 springboot+vue宠物医院管理系统 java宠物预约挂号系统 微服务 宠物挂号系统 宠物医院预约挂号系统 springboot宠物诊所
  16. python不小心删除恢复上一步_意外获取删除python后如何恢复
  17. MacBook如何通过键盘快捷键输入特殊字符_特殊符号
  18. 计算机控制技术第二版答案于微波,微波技术习题答案 2.doc
  19. Android项目实战之高仿网易云音乐项目介绍
  20. java resources报错解决方案(步骤三亲测)

热门文章

  1. 学习印度英语-Hinglish
  2. 关于两个串口停止位不一样还能通信的问题
  3. Ckeditor and ckfinder 配置实现截图上传图片到远程服务器
  4. 16个国外网站设计能帮你找到灵感
  5. tomcat jndi mysql_Tomcat使用JNDI配置数据源
  6. ApacheDS无法启动,导致Knox无法登陆,用户名和密码都是正确的。
  7. could not determine kind of name for C.memcpy
  8. 那如何向学生和家长推荐呢
  9. Laravel刘彦均
  10. 服务器系统运行状态检测邮件报警