发布时间:2015-03-05 15:53:14
特别说明,本文是从《让你不再害怕指针》里整理而来,向原作者致敬! 1、int p; 这是一个普通的整型变量。 2、int *p; 首先从p处开始,先与*结合,所说明p是一个指针; 然后再与int 结合,说明指针所指向的内部的类型是int型; 所以p是一个返回整型数据的指针。 3、int p[3]; 首先从p处开始,先与[...
......【阅读全文】
发布时间:2015-03-05 15:22:56
要理解.c文件与.h文件有什么不同之处,首先需要弄明白编译器的工作过程,一般说来编译器会做以下几个过程:1.预处理阶段2.词法与语法分析阶段3.编译阶段,首先编译成纯汇编语句,再将之汇编成跟CPU相关的二进制码,生成各个目标文件4.连接阶段,将各个目标文件中的各段代码进行绝对地址定位,生成跟特定平台相关的可执行文件,当然,最后还可以用objcopy生成纯二进制码,也就是去掉了文件格式信息 编译器在编译时是以c文件为单位进行的,也就是说如果你的项目中一个c文件都没有,那么你的项目将无法编译,连接器是以目标文件为单位,它将一个或多个目 标文件进行函数与变量的重定位,生成最终的可执行文件,在P......【阅读全文】
发布时间:2015-03-05 15:13:43
看一些程序的时候老是有“#ifdef __cplusplusextern "C" {#endif”的定义,搞搞清楚是怎么回事:Microsoft-Specific Predefined Macros__cplusplus Defined for C++ programs only. 意思是说,如果是C++程序,就使用extern "C"{而这个东东,是指在下面的函数不使用的C++的名字修饰,而是用C的The following code shows a header file which can be used by C and C++client applications:// MyCFu......【阅读全文】