C语言把字符串当成是数组形式的byte
对于C语言来说,以下的两种创建char型数组方法一致,由此可看出char型name数组会自动补上\0
char name[] = "Zed";
char full_name[] = {'Z', 'e', 'd', '\0'};
使用sizeof()能否询问C语言数组的大小(单位是byte)
how to break it
1.如果full_name不加上\0,则会打印如下图所示,应该是出现了奇怪的东西

2. 打印areas[10],出现了负数
附加题
- areas[0] = 100,打印出来就是100
- 与1一样
- 将name[0]赋值给areas[0],会打印字母的ASCII码值
- 64位和32位的int型都是占4字节,两者的主要区别在于
| 32 | 64 | |
|---|---|---|
| char*(指针变量) | 4字节 | 8字节 |
| long | 4字节 | 8字节 |
| unsigned long | 4字节 | 8字节 |

被折叠的 条评论
为什么被折叠?



