C语言预处理器是个简单的的宏处理器,预处理器用特殊的命令行控制,这些命令行以#开头,不包含预处理器命令的行称为源程序文本行。预处理器通常从源文件中删除所有预处理器命令行,并按预处理器命令指示对源文件进行其它转换,然后,得到的经过预处理的源文本成为有效C语言程序。
下面是常见的预处理器命令:
#define——定义预处理器宏,如果是函数式宏定义,左括号与宏名之间不能有空格,所有参数及整个宏替换最...
分类:
编程语言 时间:
2015-04-08 11:00:34
阅读次数:
236
主要列举visual c++ 2010中值得注意的预定义宏,同时简单介绍了相关宏的用法。
分类:
编程语言 时间:
2014-11-11 22:27:18
阅读次数:
189
MiniGUI的函数及各个预定义宏均分布于各个头文件内,特别不方便查找,也不利于新手的学习。
有一天发现了doxygen,于是用该工具生成了minigui的文档参考手册 ,基于v1.6.10版。
地址:http://download.csdn.net/detail/u013148209/8137895
演示如下:
1.搜索函数,可见具有自动提示补充功能;
2.搜索结果如下...
分类:
其他好文 时间:
2014-11-09 12:37:45
阅读次数:
187
代码实例:
#include
using namespace std;
void show()
{
cout<< "该语句所在的函数名为:"<< __FUNCTION__ <<endl;
cout<< "当前文件名为:" << __FILE__ <<endl;
cout<< "当前代码所在行为:" << __LINE__ <<endl;
}
int main...
分类:
其他好文 时间:
2014-11-04 13:16:14
阅读次数:
154
在C++中支持一种预定义宏。比如:__FILE__: 就是当前源代码文件名__LINE__: 就是当前源代码的行号这些宏可以在printf等语句中直接作为字符串使用,调试的时候很方便。如下代码所示:int _tmain(int argc, _TCHAR* argv[]){ printf("Li...
分类:
编程语言 时间:
2014-11-01 19:05:00
阅读次数:
231
(1)当数组作为函数的参数进行传递时,该数组自动退化为同类型的指针。所以这里要注意函数里面的sizeof运算符。(2)打印出当前源文件的文件名以及源文件的当前行号:cout << __FILE__ ; cout<<__LINE__ ; __FILE__和__LINE__是系统预定义宏,这种宏并不是在...
分类:
编程语言 时间:
2014-09-22 09:36:02
阅读次数:
215
标准C语言预处理要求定义某些对象宏,每个预定义宏的名称一两个下划线字符开头和结尾,这些预定义宏不能被取消定义(#undef)或由编程人员重新定义。下面预定义宏表,被我抄了下来。__LINE__ 当前程序行的行号,表示为十进制整型常量__FILE__ 当前源文件名,表示字符串型常量__DATE__转换...
分类:
编程语言 时间:
2014-08-18 16:16:32
阅读次数:
196
编译器内置宏:先介绍几个编译器内置的宏定义,这些宏定义不仅可以帮助我们完成跨平台的源码编写,灵活使用也可以巧妙地帮我们输出非常有用的调试信息。ANSI C标准中有几个标准预定义宏(也是常用的):__LINE__:在源代码中插入当前源代码行号;__FILE__:在源文件中插入当前源文件名;__DATE...
分类:
其他好文 时间:
2014-08-04 17:05:27
阅读次数:
314
一、预定义__GNUC__宏1__GNUC__是gcc编译器编译代码时预定义的一个宏。需要针对gcc编写代码时,可以使用该宏进行条件编译。2__GNUC__的值表示gcc的版本。需要针对gcc特定版本编写代码时,也可以使用该宏进行条件编译。3__GNUC__的类型是“int”,该宏被扩展后,得到的是...
分类:
其他好文 时间:
2014-07-29 14:15:08
阅读次数:
197
本文对分别测试VC,MinGW,GCC 三种编译器,32位和64位模式,共6种情况下,和64位编程有关的与预定义宏的值。对跨平台编程具有参考意义。Agner Fog 在他的《Calling conventions for different C++ compilers and operating s...
分类:
其他好文 时间:
2014-07-22 00:17:34
阅读次数:
228