一个奇怪的问题,大家遇到过没?

wbice 2008-04-13 10:19:18
我用VC2005写程序,C++,用了很多指针,最后遇到一个奇怪的问题,就是单步调试时可以正常出结果,但是直接运行就遇到问题需要关闭,大家遇到过没?可能是哪里的问题呢?谢谢大家
...全文
134 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
zhengguoying 2010-05-17
  • 打赏
  • 举报
回复
这种情况虽然比较少见,但是在编程的时候还是要注意的
这就是编程安全性和健壮性的问题了,尤其要考虑清楚周密
wbice 2008-04-14
  • 打赏
  • 举报
回复
找到问题了,嘿嘿
详细分析如下:
本人定义结构体大致如下:
typedef struct dot
{
int x0;
int y0;
......
}*mydot;
申请空间时,我写的sizeof(mydot),空间不够了,嘿嘿,大家别犯类似错误呀!!
结贴加分喽!
Leejun527 2008-04-13
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 wbice 的回复:]
单步该完的之后又奇怪的进入好几个头文件,跳来跳去才结束
[/Quote]
这就表示已经出现异常了。
qmm161 2008-04-13
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 doon 的回复:]
可能是初始值的问题。debug情况下,初始值一般会被自动赋值为0或者null. 而release版本下不可以。在release版本编译时,查看一下警告,看有没有关于未初始化就使用的警告
[/Quote]

多半是!
wbice 2008-04-13
  • 打赏
  • 举报
回复
在release下也没有警告
嵌云阁主 2008-04-13
  • 打赏
  • 举报
回复
多线程?
wbice 2008-04-13
  • 打赏
  • 举报
回复
单步该完的之后又奇怪的进入好几个头文件,跳来跳去才结束
漂流的代码 2008-04-13
  • 打赏
  • 举报
回复
可能是初始值的问题。debug情况下,初始值一般会被自动赋值为0或者null. 而release版本下不可以。在release版本编译时,查看一下警告,看有没有关于未初始化就使用的警告
jieao111 2008-04-13
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 wbice 的回复:]
那为什么调试时发现不了问题呢?我也感觉是这里的问题
[/Quote]
不可能,你单步完了没有
wbice 2008-04-13
  • 打赏
  • 举报
回复
代码没办法往上贴,是图形学的实验,多边形区域填充,大家有做过的没?
wbice 2008-04-13
  • 打赏
  • 举报
回复
那为什么调试时发现不了问题呢?我也感觉是这里的问题
Treazy 2008-04-13
  • 打赏
  • 举报
回复
问题是存在的,只是没发现而已

野指针的可能比较大点
baihacker 2008-04-13
  • 打赏
  • 举报
回复
指针指向了不应该指向的地方

69,371

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧