c - scanf ("%d", &num) 的状态为 0 或 1

标签 c

我按照C Primer Plus的说明编写了以下代码:

#include <stdio.h>
int main(void) {
    int num;
    int x = scanf("%d", &num);
    printf("%d", x);
}   

运行时:

$ ./a.out
t
0
$ ./a.out
2
1

scanf 如何检测“0”或“1”值?

最佳答案

它不会检测该值,而是返回它。它读取一个整数并将其放入 num 中。 scanf 的返回值不是它从用户输入中读取的值,而是读取的值的数量,在您的情况下最多可以为 1。

关于c - scanf ("%d", &num) 的状态为 0 或 1,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52816484/

相关文章:

c - MINLOC 是否适用于从索引 0 开始的数组? (Fortran 90/95)

c - 关于 "C"中的 Prime Generation - 我的代码有什么问题? -

c - pthread_cancel 在 solaris 下不工作

c - 给出段错误和 idk 在哪里

java - 将数据从 JNI 函数返回到 Android 应用程序代码

c - 套接字编程权限被拒绝

c - 在 C 中以更高的精度存储数字

c - 如何将单色 xbm 位图数据转换为 1 channel 8bpp 图像?

c - libc 中的函数地址?

c - 初始化 union/结构的正确方法是什么?