变量的定义只能出现一次,否则会导致重复定义。但却可以声明多次。因此全局变量不可以定义在头文件中。因为当该头文件被多个c文件包含的话,会导致重复定义。因此一般做法是在某个特定的头文件中声明,而在另外一个特定的c文件中定义。需要使用就包含前者。
全局变量可不可以定义在可被多个.c文件包含的头文件中?为什么?
不可以,因为每个.c文件引用该.h文件时,会对.h中的函数重新定义一次。
如果全局变量被定义在可被多个.c文件包含的头文件中时,就会出现重复定义。
所以,应该是在某个.c文件里面定义,在.h中用extern进行声明
cygwin编译的win32程序不需要cygwin1.dll库的方法
http://blog.csdn.net/simeone18/article/details/6591240
查看gcc所定义的所有预定义宏
http://blog.csdn.net/hongszh/article/details/3449954