c++字符串长度问题。char a[4]="your" 这个有问题吗?为什么书上说✀尀0✀占据内存

2024-11-29 07:40:00
推荐回答(3个)
回答1:

char a[4]="your" 这个有问题。应当为char a[5]="your"。
'\0'占据内存空间但不计入字符串的长度。上述字符串的长度是4。
'\0'只是表示一个字符串的结束,它的存储也要占一个字节的空间,但是your是由四个字符组成的。这二者不矛盾。

回答2:

char a[4]="your" 有问题,用串自动初始化字符数组,但长度不够。"your"需要五个元素。即y,o,u,r,\0

可以手动初始化程序your,但不能当串使用。

回答3:

首先,第一个没有问题