c语言的输入函数

介绍

小编给大家分享一下c语言的输入函数,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获、下面让我们一起去了解一下吧!

c语言的输入函数有:1,【scanf()】函数返回成功赋值的数据项数,读到文件末尾出错时则返回EOF; 2、获取字符有一个int型的返回值,当程序调用获取字符时,程序就等着用户按键。

 c语言的输入函数

<强> c语言的输入函数有:

<代码> 1,scanf>

scanf()函数返回成功赋值的数据项数,读到文件末尾出错时则返回EOF。

如:

scanf (“% d % d",, a, b);

如果a和b都被成功读入,那么scanf的返回值就是2

如果只有一个被成功读入,返回值为1

如果a和b都未被成功读入,返回值为0

如果遇到错误或遇到文件,返回值为EOF

且返回值为int型

空白符:空白字符会使scanf()函数在读操作中略去输入中的一个或多个空白字符。

非空白符:一个非空白字符会使scanf()函数在读入时剔除掉与这个非空白字符相同的字符。

使用scanf函数时应该注意的事项

(1)对于字符串数组或字符串指针变量,由于数组名和指针变量名本身就是地址,因此使用scanf()函数时,不需要在它们前面加上“,“操作符。

(2)可以在格式化字符串中的“%”;各格式化规定符之间加入一个整数,表示任何读操作中的最大位数。

(3) scanf()函数中没有精度控制。

如:scanf (“% 5.2 f",, a);是非法的。不能企图用此语句输入小数为2位的实数。

(4) scanf中要求给出变量地址,如给出变量名则会出错

如scanf (“% d",一个);是非法的,应改为scnaf (“% d",,),才是合法的。

(5)在输入多个数值数据时,若格式控制串中没有非格式字符作输入数据之间的间隔则可用空格,标签或回车作间隔。

C编译在碰到空格,选项卡,回车或非法数据(如对“% d”输入“12”时,一个即为非法数据)时即认为该数据结束。

(6)在输入字符数据(% C)时,若格式控制串中无非格式字符,则认为所有输入的字符均为有效字符。

(7)如果格式控制串中有非格式字符则输入时也要输入该非格式字符。

<代码> 2,获取字符

获取字符有一个int型的返回值。当程序调用获取字符时。程序就等着用户按键。用户输入的字符被存放在键盘缓冲区中。直到用户按回车为止(回车字符也放在缓冲区中)。当用户键入回车之后,获取字符才开始从标准输入流中每次读入一个字符。获取字符函数的返回值是用户输入的第一个字符的ASCII码,如出错返回1,且将用户输入的字符回显到屏幕。如用户在按回车之前输入了不止一个字符,其他字符会保留在键盘缓存区中,等待后续获取字符调用读取。也就是说,后续的获取字符调用不会等待用户按键,而直接读取缓冲区中的字符,直到缓冲区中的字符读完为后,才等待用户按键。

<代码> 3,getch

getch与获取字符基本功能相同,差别是getch直接从键盘获取键值,不等待用户按回车,只要用户按一个键,getch就立刻返回,getch返回值是用户输入的ASCII码,出错返回1。输入的字符不会回显在屏幕上。getch函数常用于程序调试中,在调试时,在关键位置显示有关的结果以待查看,然后用getch函数暂停程序运行,当按任意键后程序继续运行

<代码> 4,得到

功能:从标准输入流中读取字符串,直至接受到换行符或EOF时停止,并将读取的结果存放在缓冲指针所指向的字符数组中。换行符不作为读取串的内容,读取的换行符被转换为零值,并由此来结束字符串。

返回值:读入成功,返回与参数缓冲区相同的指针;读入过程中遇到EOF(文件尾)或发生错误,返回零指针。所以在遇到返回值为零的情况,要用ferror或feof函数检查是发生错误还是遇到EOF。

以上是c语言的输入函数的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!

c语言的输入函数