__FUNCTION__, __FILE__, __LINE__ (原)
在最新的ISO C标准中,如大家所知的C99,加入了另一个有用的、类似宏的表达式__func__,其会报告未修饰过的(也就是未裁剪过的)、正在被访问的函数名。请注意,__func__不是一个宏,因为预处理器对此函数一无所知;相反,它是作为一个隐式声明的常量字符数组实现的:
static const char __func__[] = "function-name";
在function-name处,为实际的函数名。为激活此特性,某些编译器需要使用特定的编译标志,请查看相应的编译器文档,以获取具体的资料。
在Visual Studio 2005中,默认情况下,此特性是激活的,但不能与/EP和/P编译选项同时使用。请注意在IDE环境中,不能识别__func__ ,而要用__FUNCTION__ 代替。
Comeau的用户也应使用 __FUNCTION__ ,而不是 __func__ 。
C++ BuilderX的用户则应使用稍稍不同的名字:__FUNC__ 。
GCC 3.0及更高的版本同时支持 __func__ 和__FUNCTION__ 。
__FUNCTION__, __FILE__, __LINE__ (原)相关推荐
- C语言便于调试的宏定义 __FILE__、__FUNCTION__、__LINE__、__VA_ARGS__ 参数使用
__FILE__.__FUNCTION__.__LINE__ 这几个宏定义从名字就可以看出功能: __FILE__:宏在预编译时会替换成当前的源文件名,字符串类型. __FUNCTION__:宏在预编 ...
- 利用__FILE__, __LINE__, __FUNCTION__跟踪调试程序
作为一个Linux系统下的C程序员,你可能发现调试程序是个比较麻烦的工作,虽然已经有gdb,kgdb等专业的调试软件,但如果对这些软件运用不熟练是根本达不到调试程序找出bug的目的的.又或者你对gdb ...
- C语言中预定义符 __FILE__, __LINE__, __FUNCTION__, __DATE__, __TIME__ 的使用演示
本文演示了C语言中预定义符 __FILE__, __LINE__, __FUNCTION__, __DATE__, __TIME__ 的使用. 这几个预定义符的名称就没必要再介绍了,顾名思义嘛. // ...
- __FILE__,__LINE__,FUNCTION__实现代码跟踪调试(linux下c语言编程 )(转自IT博客)
先看下简单的初始代码:注意其编译运行后的结果. root@xuanfei-desktop:~/cpropram/2# cat global.h //头文件 #ifndef CLOBAL_H ...
- C语言预定义宏 __func__、__FUNCTION__、__LINE__、__FILE__、__DATE__、__TIME__
文章目录 20211231 打印示例 今天看RXW源码的时候,看到了在函数里使用 __func__ 参数的样例,遂查一下这两玩意的使用方法 这玩意叫做预定义宏 标准C语言预处理要求定义某些对象宏,每个 ...
- C 预处理器 —— __DATE__ # __TIME__ # __FILE__ # __LINE__ # __STDC__ (预处理宏的使用 —— 打印debug信息:)
预定义宏: ANSI C 定义了许多宏.在编程中您可以使用这些宏,但是不能直接修改这些预定义的宏. 宏 描述 __DATE__ 当前日期,一个以 "MMM DD YYYY&quo ...
- 转大神的日志 【大杂烩】杂7杂8的东西
2013.8.21 今天是第一天搬到5栋,新的环境,新的面孔.工作上暂时没有安排,可以先看看资料,早上把iptables重新看了一下,整理了一下链和表的关系,并且在MR3080上进行了实验. 2013 ...
- 【大杂烩】杂7杂8的东西
2013.8.21 今天是第一天搬到5栋,新的环境,新的面孔.工作上暂时没有安排,可以先看看资料,早上把iptables重新看了一下,整理了一下链和表的关系,并且在MR3080上进行了实验. 2013 ...
- 嵌入式C语言——学习笔记
嵌入式C语言--学习笔记 计算机程序语言的学习思路? GCC的使用及其常用选项介绍 gcc概述 C语言编译过程 C语言常见的错误 预处理的使用 宏展开下的 #.## C语言常用关键字及运算符操作 关键 ...
最新文章
- 中gcd函数_欧拉函数φ(n)的计算及欧拉定理
- Android中的线性布局
- 从长板和咏春看单板滑雪固定器角度选择
- 变压器轻载是什么意思?
- 第十八天:规划风险管理和识别风险
- poj 2236 WirelessNetwork 并查集
- Python十进制转十五进制
- C语言实现查找一组数中的众数
- 软件测试面试题:Jmeter怎么录制脚本,怎么过滤,线程组有哪些内容?
- opnet之变量类型
- Linux命令老是记不住?一篇文章帮你解决。Linux常用命令汇总
- 反病毒工具-Wsyscheck,Xuetr,PowerTool
- 企查查爬虫循环获取信息
- 如何做好软件系统的需求调研,七种武器让你轻松搞定
- Linux学习笔记--12(iptables与firewalld)
- 基于Linux2.6内核的嵌入式手持设备开机LOGO修改
- 44道JS难题,做对一半就是高手
- Foxmail 邮件的备份与恢复
- 当好色女子遇上好色之徒-案例
- 首个高温红色预警来了,气象预警你了解多少?
热门文章
- shell切割日志脚本
- Open Source Web Design!
- Blueprint:一个Flash Builder代码示例的扩展
- asp.net 2中的图片上传
- linux系统安装锐捷客户端下载,Linux在宿舍里如何上网?--Fedora下锐捷802.1x客户端软件的安装和使用方法...
- java sox语音_Sox语音转换的相关知识
- 指定rviz的点启动_好消息!武汉已经启动新冠疫苗紧急接种工作
- php设置请求头部,php curl如何设置自定义请求头
- php mongodb 连接失败,解决PHP使用普通账号连接mongodb报错问题
- vs code html table,vs Code 快速生成代码