小编Jav*_*utt的帖子

接受C中的空字符串

我的程序可以接受任意长度或空输入.但是,如果输入为空(空格或换行符),程序将继续等待输入.我也试过fgets但是如果按下空格/换行符,它仍然会在关闭之前等待更多不是空格/换行符的输入.

简化代码:

#include <stdio.h>
main()
{
    int num;
    scanf("%i",&num);
    printf("%i",num);
}
Run Code Online (Sandbox Code Playgroud)

输入:

363792 
Run Code Online (Sandbox Code Playgroud)

输出:

363792
Run Code Online (Sandbox Code Playgroud)

期望:

输入:

输出:

我是C的新手,我很难完成这项任务.

尝试使用fgets:

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
main()
{
    int n;
    char s[20];

    fgets(s,20,stdin);
    n = atoi(s);

    printf("%i",n);
}
Run Code Online (Sandbox Code Playgroud)

编辑:结果我没有正确编译代码.所以每当我尝试进行更改时,它只是使用scanf查看原始代码.

c input

15
推荐指数
3
解决办法
5639
查看次数

标签 统计

c ×1

input ×1