C语言#getchar()函数
2014-12-09 15:27
302 查看
1、getchar()的作用
getchar()函数的作用是从缓冲区读入一个字符的数据,第一次读取数据getchar()会等待用户键入ENTER然后开始从缓冲区进行读取数据,如果缓冲区的数据大于1个字节,剩下的数据会暂时存储在缓冲区,getchar会依次进行读取,而不需要用户再次输入ENTER来触发读取。
getchar()的返回值是一个整型的数据,其值对应字符的ASCII码。
2、统计输入空格数量的小程序
#include<stdio.h>
main() {
int n;
int m;
n = 0;
printf("please input a String:\n");
while((m = getchar()) !='\n'){
if(m == ' '){
++n;
}
}
printf("n = %d\n",n);
}
程序实现了统计空格的简单功能,将getchar()读取的数据赋给整型变量m用于统计空格的数量。
Q1:在C语言中Char型变量实质上也是一种整型变量,如果将程序中m定义为Char型数据,功能还能不能实现?
Q2:换一种写法,会出现什么情况?
程序进入死循环,为什么?
A1:可以实现
A2:第一种方式getchar()只在循环外读取一个字符(当读取的字符不是回车时进入循环),进入循环后不再运行getchar()读取外界字符,m的值不在变化,当然死循环;
第二种每次循环都运行一次getchar()读取一个字符,直到输入回车结束;
getchar()函数的作用是从缓冲区读入一个字符的数据,第一次读取数据getchar()会等待用户键入ENTER然后开始从缓冲区进行读取数据,如果缓冲区的数据大于1个字节,剩下的数据会暂时存储在缓冲区,getchar会依次进行读取,而不需要用户再次输入ENTER来触发读取。
getchar()的返回值是一个整型的数据,其值对应字符的ASCII码。
2、统计输入空格数量的小程序
#include<stdio.h>
main() {
int n;
int m;
n = 0;
printf("please input a String:\n");
while((m = getchar()) !='\n'){
if(m == ' '){
++n;
}
}
printf("n = %d\n",n);
}
程序实现了统计空格的简单功能,将getchar()读取的数据赋给整型变量m用于统计空格的数量。
Q1:在C语言中Char型变量实质上也是一种整型变量,如果将程序中m定义为Char型数据,功能还能不能实现?
Q2:换一种写法,会出现什么情况?
程序进入死循环,为什么?
#include<stdio.h> main() { int n; int m; n = 0; printf("please input a String:\n"); m = getchar(); while(m !='\n'){ if(m == ' '){ ++n; } } printf("n = %d\n",n); }
A1:可以实现
A2:第一种方式getchar()只在循环外读取一个字符(当读取的字符不是回车时进入循环),进入循环后不再运行getchar()读取外界字符,m的值不在变化,当然死循环;
第二种每次循环都运行一次getchar()读取一个字符,直到输入回车结束;
相关文章推荐
- C语言使用scanf函数获取数据后,使用getchar()无法获得字符的处理方法
- C语言getchar函数和memset
- c语言中getchar()函数一个常见Error
- C语言中getchar()函数的理解
- C语言学习笔记之字符I/O(getchar()函数与putchar()函数)
- C语言中最常用的三种输入输出函数scanf()、printf()、getchar()和putchar()
- C语言 getchar(),putchar()函数的使用
- c语言两简单的函数------字符输入输出------【getchar、putchar(parm)】
- 重新学习C语言的getchar()函数以及某些体会
- C语言中,getchar()函数的使用事项
- C语言中getchar()函数的理解
- C语言getchar()函数与putchar()函数
- 换个角度理解C语言getchar()、getch()、scanf()函数
- C语言:清空键盘缓冲区(使用scanf(),getchar()函数必读)
- 【C语言天天练(十八)】字符/字符串输入函数fgetc、fgets、getc、getchar和gets
- C语言中 scanf函数 与getchar 函数的相关测试
- c语言getchar()函数使用总结
- 水滴石穿C语言之指针、数组和函数(转载)
- C语言初学者入门讲座 第十讲 函数(5)
- 用C语言实现参数个数可变的函数