为什么c语言中字符数组可以越界

 //为什么数组里可以出现 a[5],a[6]?

#include <stdio.h>
#include <string.h>

int main()
{
 char a[5];
 char b[5];
 
 scanf("%s",a);
 a[6] = '\0';
 strcpy(b,a);
 
 printf("输出a数组:%s\n",a);
 printf("%c\n",a[5]);
 printf("输出b数组:%s",b);
 
 return 0;
 }



 abcdefgh
输出a数组:abcdef
f
输出b数组:abcdef
--------------------------------
Process exited after 8.765 seconds with return value 0
请按任意键继续. . .

猜你喜欢

转载自blog.csdn.net/janmesyang/article/details/79180505
今日推荐