C语言输入

时间:2020-03-26
本文章向大家介绍C语言输入,主要包括C语言输入使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

在C语言中,有多个函数可以从键盘获得用户输入:

1.scanf("格式说明",变量地址列表)

scanf("%s",字符数组名或指针);
scanf("%c",字符变量地址);
scanf("%d",十进制整数变量地址);
scanf("%u",无符号十进制整数变量地址);
scanf("%o",八进制整数变量地址);
scanf("%x",十六进制整数变量地址);
scanf("%i",十进制、八进制、十六进制整数变量地址);
scanf("%e",浮点数变量地址);
scanf("%f",浮点数变量地址);
scanf("%[]",符合指定字符集合的字符指针);

scanf()可以接收多种格式的数据,遇到回车,tab,空格时,输入结束,会自动在字符串后面添加'\0',但是回车,空格和tab键仍会留在输入的缓冲区中。当连续两次调用scanf时,会直接读入上一次结束scanf时的回车符号“\n”  (0x0a);   没有将回车键屏蔽。

eg:

当输入字符串中带有空格时:

test space     //输入带有空格的字符串
first input:test
second input:space

2.gets(字符指针):可接受回车键之前输入的所有字符,并用'\n'替代 '\0'.回车键不会留在输入缓冲区中。

3.getchar():getchar的返回值是缓冲区的第一个字符的ASCII码,如出错返回-1。getchar从用户键入回车开始读缓冲区,用户在键入回车之前输入了不止一个字符,所有字符会保留在键盘缓存区中,getchar直到缓冲区中的字符读完为后,才等待用户按键。

4.getch():getch直接从键盘获取字符,不等待用户按回车。只要用户按键,getch就立刻返回,getch返回值是键盘输入的ASCII码,出错返回-1。

一般使用getchar读取scanf语句执行后,缓冲区留下的换行符。

原文地址:https://www.cnblogs.com/xingguang1130/p/12574384.html