| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 916 人关注过本帖
标题:新手求助,书上示例
只看楼主 加入收藏
萌萌的宝蓝啊
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2016-3-22
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:3 
新手求助,书上示例
书上示例的错误演示
#include <stdio.h>
int main(void)
{
int f = 4;
int g = 5;
float h = 5.0f;
printf("%d\n", f, g);
printf("%d %d\n", f);
printf("%d %f\n", h, g);
return 0;
}
这里运行结果,
4
4 3460377
0 0.000000
请问第二个输出 3460377是个随机值吗? 那么为什么每次运行程序出来的都是一样的?
输出的第三行的垃圾值为什么会是0?


[此贴子已经被作者于2016-3-22 12:13编辑过]

搜索更多相关主题的帖子: return include 运行程序 
2016-03-22 12:12
Redeyes
Rank: 4
来 自:中国
等 级:业余侠客
威 望:1
帖 子:301
专家分:292
注 册:2015-5-13
收藏
得分:10 
第二行printf你明明只用了一个%d,为什么后面要输出两个值;第三行printf你定义的g明明是一个int类型,应该是%d,可是你打成了%f,h打成了%d,完全搞反了。代码我没运行,因为我还在上课。你把这些修改过来后再试试看吧!

做一名健壮的技术青年,如果未来无法用代码去改变世界,还可以考虑去搬砖。
2016-03-22 12:32
rjsp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:528
帖 子:9025
专家分:54030
注 册:2011-1-18
收藏
得分:10 
该传两个参数,你只传了一个。这属于“未定义行为”
2016-03-22 12:34
萌萌的宝蓝啊
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2016-3-22
收藏
得分:0 
回复 2楼 Redeyes
我说了的,是一个错误的示例,意思是如果参数少了,是不是那个少了的是随机产生的
2016-03-22 12:53
快速回复:新手求助,书上示例
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.022969 second(s), 10 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved