2012年3月2日

【转】常用的预处理命令总结

摘要: 1. 预处理程序按照ANSI标准的定义,预处理程序应该处理以下指令:#if #ifdef #ifndef #else #elif#endif#define#undef#line#error#pragma#include显然,上述所有的12个预处理指令都以符号#开始,,每条预处理指令必须独占一行。2. #define#define指令定义一个标识符和一个串(也就是字符集),在源程序中发现该标识符时,都用该串替换之。这种标识符称为宏名字,相应的替换称为宏代换。一般形式如下:#define macro-name char-sequence这种语句不用分号结尾。宏名字和串之间可以有多个空白符,但串开始 阅读全文

posted @ 2012-03-02 11:14 烟雨飘零 阅读(473) 评论(0) 推荐(0) 编辑

【转】gcc和g++的区别

摘要: 误区一:gcc只能编译c代码,g++只能编译c++代码两者都可以,但是请注意:1.后缀为.c的,gcc把它当作是C程序,而g++当作是c++程序;后缀为.cpp的,两者都会认为是c++程序,注意,虽然c++是c的超集,但是两者对语法的要求是有区别的。C++的语法规则更加严谨一些。2.编译阶段,g++会调用gcc,对于c++代码,两者是等价的,但是因为gcc命令不能自动和C++程序使用的库联接,所以通常用g++来完成链接,为了统一起见,干脆编译/链接统统用g++了,这就给人一种错觉,好像cpp程序只能用g++似的。误区二:gcc不会定义__cplusplus宏,而g++会实际上,这个宏只是标志着 阅读全文

posted @ 2012-03-02 10:06 烟雨飘零 阅读(228) 评论(0) 推荐(0) 编辑

导航