摘要:
static的作用:1.先来介绍它的第一条也是最重要的一条:隐藏 当我们同时编译多个文件时,所有未加static前缀的全局变量和函数都具有全局可见性。为理解这句话,我举例来说明。我们要同时编译两个源文件,一个是a.c,另一个是main.c.下面是a.c的内容: char a = 'A'; // global variable void msg() { printf("Hello\n"); } 下面是main.c的内容: int main(void) { ... 阅读全文
摘要:
sizeof(object) 大家都知道 得到object的长度以字节为单位。那么我们这样做几个实验: char info[]="hello"; char *p=info; sizeof(info); sizeof(p);这些简单的当然很多人都知道,第一个返回的是6 第二个返回的是char* 类型在机器上的字节数(在我的64windows版本上这个值是4);然后有意思的事情就发生了: char info[]="hello" 这句话,十分的熟悉吧。其等价于 char info[5]="hello" 吗?是不是有点疑惑,其实在编译阶段 c 阅读全文
摘要:
看一些程序的时候老是有“#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 app 阅读全文