赖贝尔 发表于 2020-7-11 19:26:55

C语言,关于while和&&的问题

为何输入自然数就会循环,而不是输入1才循环(当ch为非1的数时不应该就直接判定为0而退出循环了吗?)

赖贝尔 发表于 2020-7-11 19:28:58

难道是判定的是scanf?只要执行了scanf就算1?

Hello. 发表于 2020-7-11 19:29:48

本帖最后由 Hello. 于 2020-7-11 19:36 编辑

这里判断的是 scanf 函数,scanf 是有返回值的:
如果函数调用成功,返回值是成功获取并填充到附加参数中的个数。

如果函数调用失败,返回值小于附加参数的个数(甚至是 0)。

如果读取到标准输入流的结尾处,则返回 EOF。

如果有帮助,可否设置最佳{:10_297:}

赖贝尔 发表于 2020-7-11 19:36:10

Hello. 发表于 2020-7-11 19:29
scanf是有返回值的:

那其他函数是不是基本也都有返回值?

Hello. 发表于 2020-7-11 19:37:53

赖贝尔 发表于 2020-7-11 19:36
那其他函数是不是基本也都有返回值?

不是所有都要返回值
不需要的用 void 表示

赖贝尔 发表于 2020-7-11 19:39:01

Hello. 发表于 2020-7-11 19:37
不是所有都要返回值
不需要的用 void 表示

了解了,谢谢
页: [1]
查看完整版本: C语言,关于while和&&的问题