字符数组:
char *p = "hello"; //p可以指向别的空间,但是不能改变“hello”字符串的内容(地址空间为只读型),相当于
// char const *p = "hello";
char p[] = "hello"; //不能将p指向别的空间,但可以改变“hello”的内容(在栈上),相当于
// char * const p = "hello";//(在栈上)
另一个容易犯而编译器不容易检测到的问题是,对变量、函数的声明与原来定义的类型不一样。
文件一:
int a;
int func(int);
文件二:
double a;
char func(int);