为什么c语言中字符数组可以越界
2018-01-27 15:01
253 查看
//为什么数组里可以出现 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
请按任意键继续. . .
#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
请按任意键继续. . .
相关文章推荐
- C语言中,为什么字符串可以赋值给字符指针变量
- 为什么只有字符数组可以这样输出?
- [他山之石]C语言可以给字符数组赋值的方法
- C语言可以给字符数组赋值的方法
- C语言中,为什么字符串可以赋值给字符指针变量
- C语言中,为什么字符串可以赋值给字符指针变量
- 为什么C语言检查数组访问越界会这么难?
- C语言可以给字符数组赋值的方法
- C语言中,为什么字符串可以赋值给字符指针变量
- C语言可以给字符数组赋值的方法
- C语言中,为什么没有把long转化成字符数组的函数?
- C语言中,为什么字符串可以赋值给字符指针变量
- C语言可以给字符数组赋值的方法
- C语言可以给字符数组赋值的方法
- C语言字符数组越界现象
- C语言中,为什么字符串可以赋值给字符指针变量
- C语言中,为什么字符串可以赋值给字符指针变量
- C语言中,为什么字符串可以赋值给字符指针变量
- C语言可以给字符数组赋值的方法
- c语言 数组名&&结构体名 为什么不能用数组名给数组赋值,结构体却可以