c语言中 字符数组的问题 很纠结啊 请教高手!!!

来源:互联网 发布:美工和平面设计 编辑:程序博客网 时间:2024/03/29 01:01

下面是我的代码:

#include <stdio.h>
#include <string.h>
void main(void)
{
  char a[3];
  gets(a);
  int i=0;
  while(a[i]!='/0')
  {
   printf("%c/n",a[i]);
   i++;
  }
  puts(a);
  printf("/n%s/n",a);
}

我的疑问是明明定义了字符数组是的大小是3,为什么运行时键入4个字母也行?>=5时就有错误了,本人新手,望高手指点。