__FILE__, __LINE__ 是ANSI C语言标准,各种C编译器都应当支持。而 __FUNCTION__ 是C99标准,故一些老的编译器就不支持。如gcc支持__FUNCTION__,而vc6就不支持。



重申一遍,这些宏是编译器内置宏,无法定义,也不需要定义,就如c语言关键字一样。



经测试:

1,cygwin 1.7.9-1 gcc-g++ 3.4.4-999测试3者都支持。

2,VS2002(VC7)3者都支持。



测试代码

#include <iostream>

using namespace std;

 

int main()

{

    cout<<__FILE__<<" "<<__LINE__<<" "<<__FUNCTION__<<endl;

    return 0;

}

__FILE__, __LINE__ __FUNCTION__的更多相关文章

  1. C语言中预定义符 __FILE__, __LINE__, __FUNCTION__, __DATE__, __TIME__ 的使用演示

    本文演示了C语言中预定义符 __FILE__, __LINE__, __FUNCTION__, __DATE__, __TIME__ 的使用. 这几个预定义符的名称就没必要再介绍了,顾名思义嘛. // ...

  2. [转]宏的高级使用--##,__VA_ARGS__, __FILE__, __FUNCTION__等

    [转]宏的高级使用--##,__VA_ARGS__, __FILE__, __FUNCTION__等 http://blog.csdn.net/yiya1989/article/details/784 ...

  3. __FILE__,__LINE__,FUNCTION__

    __FILE__,__LINE__,FUNCTION__实现代码跟踪调试 ( linux 下c语言编程 ) 先看下简单的初始代码:注意其编译运行后的结果. root@xuanfei-desktop:~ ...

  4. __FILE__,__LINE__,FUNCTION__实现代码跟踪调试(linux下c语言编程 )

    root@xuanfei-desktop:~/cpropram/2# cat global.h //头文件#ifndef CLOBAL_H        #define GLOBAL_H        ...

  5. __FILE__,__LINE__,FUNCTION__实现代码跟踪调试

    转:http://www.cnitblog.com/zouzheng/archive/2007/08/31/32691.aspx 先看下简单的初始代码:注意其编译运行后的结果. root@xuanfe ...

  6. linux 中C语言便于调试的宏定义编写及 __FILE__,__FUNCTION__, __LINE__参数使用

    转自:http://blog.csdn.net/edonlii/article/details/8491342/ 在linux编程中,当文件数量变的众多之后,使用gdb调试就是一场灾难.因此在程序中加 ...

  7. 编译器内置宏__LINE__&__FUNCTION__

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

  8. __FILE__,__LINE__,__func__ 真好用,DEBUG利器啊!

    我是不喜欢用类似VC下的F5,F10.曾经很喜欢用.被代码逻辑逼的没招了.所以不喜欢用了. 比如,错误是根据动态数据,产生的行为错误,无论是该写的未写,还是不该写的写了.指针跑飞什么等等,无非就是上述 ...

  9. C/c++几个预定义的宏:__DATE__,__TIME__,__FILE__,__LINE__

    一边情况下,C/C++编译器会内置几个宏,这些宏定义不仅可以帮助我们完成跨平台的源码编写,灵活使用也可以巧妙地帮我们输出非常有用的调试信息. ANSI C标准中有几个标准预定义宏(也是常用的): __ ...

  10. __FILE__,__LINE__,__DATE__,__TIME__,__FUNCTION__的使用

    C/C++ 有5个常用的预定义宏,可以当作变量直接使用 __FILE__,__FUNCTION __,__LINE__,__DATE__,__TIME__. 注意是两个下划线. 其含义如下: __FI ...

随机推荐

  1. Distributions: Chebyshev Inequality | Uniform | Cauchy | Normal/Gaussian

    https://www.britannica.com/science/probability-theory https://www.britannica.com/biography/David-Bla ...

  2. 解决Win10系统无法安装CAD软件的问题

    有一位深度官网的用户,在Windows10系统下安装AutoCAD软件,选择配置了所有安装选项后,安装将在进入安装步骤后,一下就结束了,提示软件安装不成功,然后就再也不能重装这个软件了.这该如何解决呢 ...

  3. 原版win11系统出现自动关机的解决方法

    有些MSDN我告诉你的用户在使用原版win11系统的时候,只要不动电脑,一段时间之后就会出现自动关机的问题,那这个问题要如何解决呢?这其实可能是系统休眠的bug造成的,只要禁用虚拟机或休眠即可解决.接 ...

  4. 高效实现 LRU 缓存机制:双向链表与哈希表的结合

    题目: 请你设计并实现一个满足 LRU (最近最少使用) 缓存 约束的数据结构. 实现 LRUCache 类: LRUCache(int capacity) 以 正整数 作为容量 capacity 初 ...

  5. “同声传译”还是“全文翻译”?为何HotSpot虚拟机仍要保留解释器?

    Java虚拟机采用的是基于栈的指令集架构,这意味着Java虚拟机主要通过解释执行基于栈的字节码来运行Java程序.尽管Java虚拟机采取了一些优化措施,如栈顶缓存(Stack Top Cache),将 ...

  6. 智联万物,能效领航:ThingsBoard 与 MyEMS 开源平台深度解析

    在物联网与能源管理技术蓬勃发展的时代,开源平台凭借其灵活.开放的特性成为行业创新的重要驱动力.ThingsBoard 与 MyEMS 作为开源领域的佼佼者,在各自擅长的领域展现出独特的价值与优势,下面 ...

  7. 彩笔运维勇闯机器学习--cpu与qps的线性关系

    前言 书接上文,上一小节简单介绍了一元回归的基本原理.使用方式,作为运维,实践才是最重要的,那本小节就来实践一下我们之前的话题:探索cpu与qps的关系 获取数据 1. cpu数据 由于我的监控数据在 ...

  8. 解密prompt系列59. MCP实战:从Low-Level到FastMCP的搭建演进

    核心挑战:如何为复杂数据分析任务构建可扩展的代码沙箱工具?本文将以E2B沙箱为例,通过对比Low-Level与FastMCP两种MCP-Server实现方案,深入剖析: Resource/Tool/P ...

  9. [题解]P7077 [CSP-S2020] 函数调用

    P7077 [CSP-S2020] 函数调用 题意简述 给定一个长度为\(n\)的序列\(a_1,a_2,\dots,a_n\),给定\(m\)个函数,每个函数可能是下面\(3\)种类型,用\(T_x ...

  10. RENIX_RFC2889_MAC地址容量——网络测试仪实操(下)

    三. 测试配置 1.选择向导 选择RFC2889向导 ​编辑 2.选择地址容量测试 测试项目 选择 地址缓存容量测试 ​编辑 3.选择端口 选择参与测试的端口 ​编辑 4.配置接口 默认无接口 选择添 ...