| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 691 人关注过本帖
标题:碰到过一件奇怪额事情
只看楼主 加入收藏
三少爷
Rank: 1
等 级:新手上路
帖 子:192
专家分:0
注 册:2004-4-29
收藏
 问题点数:0 回复次数:8 
碰到过一件奇怪额事情

曾经用VC++6.0编译过一个程序,debug时候的输出结果和实际运行输出的结果有出入

有没有人碰到过这种事情?这是什么原因?

搜索更多相关主题的帖子: 结果 
2004-11-07 23:38
C++大粉丝
Rank: 4
等 级:贵宾
威 望:10
帖 子:477
专家分:0
注 册:2004-4-23
收藏
得分:0 

因为DEBUG将变量初始化,但是RELEASE版才不管呢,呵呵


I am a big fan of c plus plus.
2004-11-08 18:02
三少爷
Rank: 1
等 级:新手上路
帖 子:192
专家分:0
注 册:2004-4-29
收藏
得分:0 
照我的推想应该是debug的结果对,斑竹您认为呢?还是要看具体情况(具体程序具体分析)?

2004-11-08 20:27
C++大粉丝
Rank: 4
等 级:贵宾
威 望:10
帖 子:477
专家分:0
注 册:2004-4-23
收藏
得分:0 

你说的是,所以希望在写程序时候一定要初始化变量和指针!

有时候DEBUG版挺好的,但是到了发布的时候就经常死掉...我最早写程序时候就遇到好多次莫名其妙的死掉了,但是调试就没有问题.

不要让程序变成脱缰的野马.


I am a big fan of c plus plus.
2004-11-08 21:25
三少爷
Rank: 1
等 级:新手上路
帖 子:192
专家分:0
注 册:2004-4-29
收藏
得分:0 

是一道ACM题。

[此贴子已经被作者于2004-11-08 21:32:32编辑过]


2004-11-08 21:31
三少爷
Rank: 1
等 级:新手上路
帖 子:192
专家分:0
注 册:2004-4-29
收藏
得分:0 
//第二例调试中确实是15,但运行结果确是16 #include <iostream> #include <algorithm> #include <stdio.h> #include <time.h> int n,k=0,matrix_0[49][7][7],matrix[7][7],sum_of_column[7]; using namespace std;

int maximum_among_columns() { int i,j; for(i=0;i<n;i++) sum_of_column[i]=0; for(i=0;i<n;i++) for(j=0;j<n;j++) sum_of_column[i]+=matrix[j][i]; const int *p=max_element(sum_of_column,sum_of_column+n); return *p; }

void change_matrix() { bool b; int temp,i,j; srand((unsigned)time(NULL)); for(i=0;i<n;i++) for(j=0;j<n;j++) matrix_0[k][i][j]=matrix[i][j]; k++; temp=rand()%n; rotate(matrix[temp],matrix[temp]+n-1,matrix[temp]+n); for(i=0;i<k;i++) { b=equal(&matrix[0][0],&matrix[n-1][n-1],&matrix_0[i][0][0]); if(b) { static int count=0; k--; count++; if(count>n*n) return; change_matrix(); } } return; }

int main() { int i,j,temp; int minimum_of_maximum; cin>>n; while(n!=-1) { for(i=0;i<n;i++) for(j=0;j<n;j++) cin>>matrix[i][j]; minimum_of_maximum=maximum_among_columns(); for(i=0;i<n*n;i++) { change_matrix(); temp=maximum_among_columns(); if(temp<minimum_of_maximum) minimum_of_maximum=temp; } cout<<minimum_of_maximum<<endl; cin>>n; } return 0; }


2004-11-08 21:34
三少爷
Rank: 1
等 级:新手上路
帖 子:192
专家分:0
注 册:2004-4-29
收藏
得分:0 
能看出点蛛丝马迹吗?我这程序的情况不太像是没有初始化变量和指针的那种(说错请原谅偶的洞察力弱啊)。晕啊~

[此贴子已经被作者于2004-11-08 21:40:49编辑过]



2004-11-08 21:38
C++大粉丝
Rank: 4
等 级:贵宾
威 望:10
帖 子:477
专家分:0
注 册:2004-4-23
收藏
得分:0 
可能是随机数搞的鬼。

I am a big fan of c plus plus.
2004-11-09 08:16
colorain
Rank: 1
等 级:新手上路
帖 子:92
专家分:0
注 册:2005-12-3
收藏
得分:0 
是不是程序最终发布的时候要用release版本?
2005-12-21 10:04
快速回复:碰到过一件奇怪额事情
数据加载中...
 
   



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

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