标题:这个程序总是有内存错误,高手帮看下
只看楼主
jiansilang
Rank: 1
等 级:新手上路
帖 子:12
专家分:0
注 册:2004-5-9
 问题点数:0 回复次数:5 
这个程序总是有内存错误,高手帮看下
#include <iostream>
#include <sstream>
#include <time.h>
using namespace std;

class jockgame
{
public:
    jockgame();
    void newjock();
    void xipai();
    void printjock();
private:
    string jock[52];      

};
jockgame::jockgame()
{   
    char a[4]={3,4,5,6};
    string b[13]={"A","2","3","4","5","6","7","8","9","10","J","Q","K"};
    int n=0;   
    for(int i=0;i<4;i++)
        for(int j=0;j<13;j++)
        {
           
            jock[n]=a[i]+b[j];            
            n++;            
        }
}
void jockgame::printjock()
{   
    for(int i=0;i<52;i++)
        cout<<jock[i]<<"  ";
        if(i%12==0)
            cout<<endl;
    cout<<endl<<endl<<endl;
}
void jockgame::xipai()
{
    srand(time(0));
    int n;
    string s;
    for(int i=0;i<52;i++)
    {
        n=rand()%52+1;                  //这个地方有问题,是不是随机函数调用的太多了?
        s=jock[i];
        jock[i]=jock[n];
        jock[n]=s;      
    }
}

void main()
{
    jockgame jock;
    jockgame();   
    jock.printjock();   
    jock.xipai();
    jock.printjock();   

}


[ 本帖最后由 jiansilang 于 2011-3-9 12:08 编辑 ]
搜索更多相关主题的帖子: class 内存 private include public 
2011-03-08 08:29
我是菜鸟哦
Rank: 6Rank: 6
等 级:贵宾
威 望:22
帖 子:921
专家分:209
注 册:2007-5-4
得分:0 
string s;
是什么,是CString s吧
而且还没有头文件

偶是菜鸟鸟偶惧WHO?!!!!
2011-03-08 11:00
hellovfp
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:禁止访问
威 望:30
帖 子:2976
专家分:7697
注 册:2009-7-21
得分:0 
内存倒是没有在VC6里出错,多运行几次这个错误才会出现。
经过跟踪发现是n = 52的时候,数据越界了。怎么改自己思考一下吧。

我们都在路上。。。。。
2011-03-08 12:21
hellovfp
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:禁止访问
威 望:30
帖 子:2976
专家分:7697
注 册:2009-7-21
得分:0 
当有随机数参加计算的时候,打印一下取得的随机数,你会有意想不到的收获。

我们都在路上。。。。。
2011-03-08 12:24
jiansilang
Rank: 1
等 级:新手上路
帖 子:12
专家分:0
注 册:2004-5-9
得分:0 
回复 3楼 hellovfp
谢谢
2011-03-08 14:47
wanglewili
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2011-3-25
得分:0 
n值别加1
2011-03-25 13:43



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-333525-1-1.html




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

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