为什么我的c语言程序第一个要输入两行才能运行下一步

如题所述

第1个回答  2011-08-31
LZ您好,有区别的。请注意getchar()函数,它会接收所有字符串,当然也包括空格、回车等,下面给您分析一下每个getchar()分别读取到了什么内容(按照您的输入"A、D"):
第一个程序
int main()
{
char adfc;
adfc=getchar(); //getchar()先得到A,并赋值给adfc
putchar(adfc);
putchar('\n');
getchar(); //此时getchar()得到的是由上面putchar()输出的回车键'\n'
putchar(getchar()); //getchar()先了得到d
putchar('\n');
system("pause");
return 0;
}

第二个程序(我设先输入A为第一种情况,先输入回车键再输入A为第二种情况)
int main()
{
getchar(); //第一种情况时此处得到的是A,第二种情况得到的是回车键
putchar(getchar()); //第一种情况此处得到的是回车键,第二种情况得到的才是a(要注意这里的getchar()不等于刚才那个!!!getchar()具有"实时性")
putchar('\n');
getchar(); //得到了回车键
putchar(getchar()); //先得到了D
putchar('\n');
system("pause");
return 0;
}

如有问题请追问~~~希望可以帮助您!

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网