《C专家编程》笔记4

2014-11-24 00:36:35 · 作者: · 浏览: 36

第四章 令人震惊的事实:数组和指针并不相同
许多C语言书籍对数组与指针何时相同、何时不同含糊其辞,对于这个应该重点阐述的话题只是一带而过;

声明相当于普通声明:它所说明的并非自身,而是描述其他地方的创建的对象;

定义相当于特殊的声明:它为对象分配内存;

x = y;

在这个上下文环境里,符号x的含义是x所代表的地址,符号y的含义是y所代表的地址的内容;

数组名时隔左值但不是可走该的左值;

[cpp]
#include
int main()
{
char * p = "012345";
char a[19] = "01234";
//float * pi = 3.14;
printf("%c", p[1]);
//p[1] = ch;
printf("%c", a[1]);
a[1] = 'a';
printf("%c", a[1]);

return 0;
};

以上代码验证:1 只有字符串常量可以在定义事初始化;2 用char * 的字符串常量被定义为只读;3 用char a[] 定义的字符串常量可以修改;


摘自 CodeBlog