1、一种情况:
在一个文件中包含定义: char a[ ] = "abcdefg" ;
在另一个文件中包含声明:extern char * a ;
尽管数组与指针很相似,但是毕竟是不同的,数组a [ ]是属于“字符数组”,
而指针a是“字符指针”。问题就是这两种情况对a的声明的存储空间的方式是不同的,
它们无法以一种和于情理的方式共存。因为本意两者指的应该是同一个东西,但是定义和声明不一样
就会产生错误。更正方法:
chara[ ] = "abcdefg" ; //文件一
externchar a [ ]; //文件二
更正方法二:
char*a = "abcdefg"; //文件一
externchar *a; //文件二
只要两者类型保持一致就可以了......