c中的库函数在哪里返回值?

时间:2014-07-25 02:31:19

标签: c function return-value

最终库函数将返回一个值。 谁捕获了此返回值?

例如,请考虑以下代码。

#include<stdio.h>

main()
{
    printf("Waiting for a character to be pressed from the keyboard to exit.\n");

    getch();
    return 0;
}

getch()返回一个值。谁捕获了这个价值?

给我一​​般意义上的答案,而不是上述程序的具体内容。

2 个答案:

答案 0 :(得分:5)

可以丢弃函数的返回值。

在您提供的示例中,您可能不会注意到实际上printf也有返回值。

在这种情况下,函数调用被评估为表达式语句,只发生副作用,丢弃返回值。表达式语句的另一个例子是:

21 + 21;

评估并丢弃表达式21 + 21。 C允许这种语法,尽管编译器可能会对其进行优化。

答案 1 :(得分:0)

答案是:没有人抓住价值。简单地忽略/丢弃该值。

在您的具体示例中,printf也会返回一个值。它被丢弃了。然后getch返回一个值。它也被丢弃了。实际上,C语言中的每个表达式语句都涉及丢弃返回的值(除非它是void表达式)。