C语言scanf的一些注意事项

说明

  • %d%d%d 是按十进值格式输入三个数值。输入时,在两个数据之间可以用一个或多个空格、tab 键、回车键分隔。

  • 对于 scanf(),输入数据的格式要和控制字符串的格式保持一致。比如上述例子中使用 , 来分隔输入的 %d, 相应的输入时也需要添加 ,;同样的,如果有两个以空格分隔的 %d,输入数据时也要加上空格。

  • 输入时 , 前一定要紧跟在数字后面,数字与 , 之间不能有空格。

  • 在用 %c 输入时,空格和"转义字符"均作为有效字符。

注意:scanf() 读取字符串时以空格为分隔,遇到空格就认为当前字符串结束了,所以无法读取含有空格的字符串,请看下面的例子:

#include <stdio.h>
int main()
{
    char url[30];
    scanf("%s", url);
    printf("url: %s\n", url);
    return 0;
}

结果:

http://c.biancheng.net http://biancheng.net↙
url: http://c.biancheng.net

输入了两个网址,但是 scanf() 只读取了一个,就是因为这两个网址以空格为分隔,scanf() 遇到空格就认为字符串结束了,不再继续读取了。

posted @ 2021-08-17 21:24  vhy  阅读(632)  评论(0编辑  收藏  举报