c - 带参数的函数调用如何在 C 中工作?

标签 c function return-value function-parameter

我正在学习 C 并遇到了一些我很好奇的事情。对我来说,像下面这样在 main 中调用 foo 不会返回任何东西:

int foo(bar){
    return bar * 2;
}

int main(){
    foo(10);
}

只有当我用 printf 格式化输出时,它才会将 foo 的结果返回给 main。这是故意的还是我错过了什么?以下示例有效:

int foo(bar){
    return bar * 2;
}

int main(){
    // will return 20
    printf("%d\n", foo(10));
}

最佳答案

函数调用foo(10)在

    int foo(bar){
        return bar * 2;
    }

    int main(){
        foo(10);
    }

确实返回值。但是您没有在任何变量中捕获它或打印返回值。您的第二个示例实际上打印了从 foo(10);

返回的值

关于c - 带参数的函数调用如何在 C 中工作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58531744/

相关文章:

javascript - 绑定(bind)函数不返回对象的引用

lisp - 访问器 VALUES 作为定义的最后一种形式,其返回值为 void 或可忽略

c - GCC 和 TC 提供不同的输出?

c - 获取所有素数

c - Ubuntu,POSIX mq_receive 在应该的时候没有阻塞

javascript - HTML 中的地址函数

clojure - Clojure 使用哪些命名空间进行定义

python - 无返回值的递归反向列表

android - 从android中的电话簿中选择一个联系人

c - function free 的隐式声明在 c99 中无效