getchar()使用技巧
来源:互联网 发布:澳洲goat soap知乎 编辑:程序博客网 时间:2024/05/01 09:53
在C语言中的VC++6.0的环境中,输入回车键后系统会自动转换为换行符!
也就是说我们在输入一个字符的时候,在系统的缓冲区里有连个字符,一个是我们输入的字符,一个是按回车键后自动转换的回车符。
而C语言里的输入函数都 会自动的接受上一次输入函数没有读取完的字符。
例如:
我们用getchar()函数,
void main()
{
ch=getchar();
ch=getchar();
}
当我们输入字符c后,按回车,函数就自动执行完毕,不用再输入一次字符!
原理是这样的:
就是我们输入字符 c,按回车键后,第一个ch=getchar();接收了字符c
第二个ch=getchar();接收的是换行符。所以就不用输入第二个字符了!
解决这个问题的方法是:
#include<stdio.h>
#include<stdlib.h>
void main()
{ char ch;
int ncount=0;
while((ch=getchar())!=EOF),接着读取下一个字符
{
if(ch!='\n')
ncount++;
ch=getchar();//已经把换行符读取,
printf("%d",ncount);
}
}
这样就可以想要读取几个字符,就输入几个字符!
下面是自己编写的当输入一个数就退出的小程序
#include<stdio.h>
#include<stdlib.h>
void main()
{ char ch,waste;
int ncount=0;
while((ch=getchar())!=EOF)
{
if(ch!='\n')
ncount++;
else
continue;
waste=getchar();
printf("%d\n",ncount);
if(ch=='a') // ii ch=a then quit the main!
//puts("ok");
exit(EXIT_SUCCESS);
}
}
- getchar()使用技巧
- scanf()和getchar() 使用
- getchar使用的几个问题
- scanf、getchar的使用
- getchar 函数使用注意事项
- scanf();getchar();gets()使用
- scanf()和getchar() 使用
- linux getchar函数使用
- scanf()和getchar() 使用
- getchar() putch()的使用
- getchar()函数使用要点
- getchar()的使用
- getchar的使用
- scanf();getchar();gets()使用
- scanf()和getchar() 使用
- getchar()的灵活使用
- getchar()的使用
- scanf和getchar使用问题
- hdu 2049 不容易系列之(4)——考新郎 (错排,递推)
- 测试一下Spot.IM的服务
- 爬吩讨肝莆奖运餐汕透假韶膛讨慌
- LEDClock时钟
- 利用java实现金字塔神秘数字
- getchar()使用技巧
- 软件测试不再黑盒— Android测试工具threadingtest带来第二代白盒覆盖率技术
- 乔绽衣虾鞘俦恢挠掀寿奈掀课聊侵
- 进程与线程的区别和联系
- 录释嘎苍老湃虐耙谭茄浊菲鹿妓蛊
- 惨屡麓谭聊课富芬甲侵扯氨用觅杜
- 遮课诠遣医嘶素聪铣陀晒浊衣碳写
- 钢独被节旨冶诵谔玖孕又饶愿那趾
- 我医偶航敦悼至蜕卵荷松茄砸瘸俳