c - 关于 C 函数
问题描述
#include<stdio.h>
int add(int x,int y,int z){
return x+z+y;
}
int main(){
float w = printf("%d\n", add(40, 40, 55));
printf("%f",w);
return 0;
}
谁能解释 'w' 的值为 4 吗?
解决方案
来自printf
返回值
成功返回后,这些函数返回打印的字符数(不包括用于结束输出到字符串的空字节)。
在您的示例中,您的printf
打印件135
和 '\n'
因此给出4
尝试不同的变化,看看
float w=printf("%d\n",add(40,40,55));
printf("%f\n",w);
w=printf("%d\n",add(40,0,5));
printf("%f\n",w);
w=printf("%d\n",add(0,0,5));
printf("%f\n",w);
在一个完全不同的音符上w
应该是int
推荐阅读
- python - 将列表列表转换为 numpy 数组会产生不同的结果
- php - 考虑“除所有字符”类型正则表达式中的转义引号
- java - SpringBoot - Register a bean before @Component's get scanned
- python - 用户不存在,也没有重定向到 django 项目中创建的租户
- coinbase-api - coinbase-api 有什么 Swagger 吗?
- sparql - 维基数据示例和子类
- php - 集成 Apple Pay 时,如何将 Stripe 的 javascript paymentRequest 与 PHP 处理服务器端混合使用
- iis - 强制在 IIS 中出现内部服务器错误
- python - UWSGI 不会将应用程序标准输出重定向到标准输出,仅重定向到文件
- reactjs - 在 redux 操作函数中获取和调度