24小时热门版块排行榜    

CyRhmU.jpeg
查看: 2652  |  回复: 13

virtualzx

木虫 (著名写手)

【答案】应助回帖

★ ★
gxqlp: 金币+2, ★★★很有帮助, 给的建议很有用,谢谢 2013-11-01 21:03:14
引用回帖:
10楼: Originally posted by gxqlp at 2013-10-31 17:50:16
我试了一下,将出错的数组的维数改好,再计算时,没有write语句输出的版本(1)算出来的结果跟之前有输出语句的版本(2)结果一样。现在正在试着把版本2中的数组也修改后,看看会有什么差别。我有个疑问,就是我wr ...

数组越界后果是很难以预计的。这个数组之外的内存可能是任何变量或者代码或者其他东西,有可能你恰好写到一块没有用的内存,或者某个之后没有再使用的变量,就什么也不会发生,也可能直接segfault,更常见的是当时没事儿,但是过后很奇怪的地方会segfault。而且每次改代码或者改编译器或者改编译选项,内存的布局都不一样了,运行结果都可能会变
11楼2013-11-01 09:57:26
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

gxqlp

铁杆木虫 (正式写手)

引用回帖:
11楼: Originally posted by virtualzx at 2013-11-01 09:57:26
数组越界后果是很难以预计的。这个数组之外的内存可能是任何变量或者代码或者其他东西,有可能你恰好写到一块没有用的内存,或者某个之后没有再使用的变量,就什么也不会发生,也可能直接segfault,更常见的是当时 ...

也就是说数组越界会引起意料之外的结果?那在windows系统下运行这两个版本的程序时,结果算出来是一样的,也就是说我在windons系统下编译时,没查找出数组越界的问题,那系统默认的出来方式跟SSH上是不一样的?
理想很丰满,现实很骨感!努力。。。
12楼2013-11-01 21:05:00
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

virtualzx

木虫 (著名写手)

引用回帖:
12楼: Originally posted by gxqlp at 2013-11-01 08:05:00
也就是说数组越界会引起意料之外的结果?那在windows系统下运行这两个版本的程序时,结果算出来是一样的,也就是说我在windons系统下编译时,没查找出数组越界的问题,那系统默认的出来方式跟SSH上是不一样的?...

是的,数组越界可能会产生无法预料的结果。在不同的机器上,不同的操作系统,不同版本的编译器运行的结果都有可能不同(也都有可能相同)。
13楼2013-11-01 23:46:51
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

gxqlp

铁杆木虫 (正式写手)

内容已删除
理想很丰满,现实很骨感!努力。。。
14楼2013-11-04 09:54:38
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 gxqlp 的主题更新
信息提示
请填处理意见