作者xucin (vegetable)
看板C_and_CPP
标题[问题] struct的问题
时间Wed Oct 28 16:33:11 2015
开发平台(Platform): (Ex: VC++, GCC, Linux, ...)
GCC
问题(Question):
喂入的资料(Input):
读取档案
预期的正确结果(Expected Output):
产生印出档
错误结果(Wrong Output):
compile正常但执行结果不如预期
程式码(Code):(请善用置底文网页, 记得排版)
http://ideone.com/90CE62
上面是我的code
第31行的bbbb阵列我在下面的程式完全没有用
也就是说 sen.bbbb这个参数没用到
但是我把 31行砍掉後
下面printf的结果会全部消失
why?
---------------------------------------
我测试了一下在接字元时(107行)
如果把dist[5]改成sen.bbbb时
前面102行的%c值会不对
也旧是104行印出来的sen.name字元数会超过五个
why?
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 140.118.127.111
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/C_and_CPP/M.1446021194.A.B78.html
1F:→ Caesar08: [重要] 发文前务必阅读:常见问题十三诫 第二个 10/28 16:47
2F:→ xucin: 那个小bug我没有发现 但好像不是这个原因 我改成6还是一样 10/28 16:55
3F:→ Caesar08: 更新你的code吧 10/28 17:23
4F:推 yvb: " EGC " 字串长度 5, 但隐含 '\0' 在最後, 所以共 6 个字元. 10/28 17:38
已解决 非常感激 请问一下 字串长度 sen.name的长度为什麽会
影响到下一个变数的值?
是因为struct记忆体位置会刚好在隔壁吗??
※ 编辑: xucin (140.118.127.111), 10/28/2015 17:56:25
5F:→ yvb: 上述疑问, 可以自行动手做, 试着把位址印出来看看. 10/29 16:19