请问一个C语言的问题.
程序如下:
#defind N 6;
main()
{
int i=0;
char ch[N];
for(;i<N;i++)
ch[i]=getchar();
for(i=0;i<N;i++)
putchar(ch[i]);
printf('\n');
}
如程序运行后输入:
ab 回车
c 回车
def 回车
运行结果竟是:
ab
c
d
以下是我的几个问题:
当第一次输入ab后,
for(;i<N;i++)
ch[i]=getchar();
这条语句循环了6次,但getchar()只是接收了2个字符,那后4次循环ch[i]=getchar()这条语句会起作用吗?
然后,当第二次,第三次输入后,main函数是从哪执行起的?是从头执行全部语句,还是只是执行两个for语句?
请指教,谢谢!