1.为什么字符串无法直接赋值给字符数组
为什么上面错误,下面正确,这是因为当把字符串赋值给某个变量时,其实是把字符串的首地址给那个变量,既然是地址,那肯定只能给指针变量了,char names[] 是一个字符数组,char *names[]是字符型的指针数组
1 |
|
同样类似的还有下面这样的情况
1 |
|
2.类型决定了变量存储的布局
我们知道类型会影响变量占用空间的大小,如int占用4个字节,char占用一个字节,可是,类型是如何决定布局的呢,布局指的是什么?又有哪些不同的布局方式?
为什么上面错误,下面正确,这是因为当把字符串赋值给某个变量时,其实是把字符串的首地址给那个变量,既然是地址,那肯定只能给指针变量了,char names[] 是一个字符数组,char *names[]是字符型的指针数组
1 |
|
同样类似的还有下面这样的情况
1 |
|
我们知道类型会影响变量占用空间的大小,如int占用4个字节,char占用一个字节,可是,类型是如何决定布局的呢,布局指的是什么?又有哪些不同的布局方式?