| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 871 人关注过本帖
标题:大家好 我是新手 刚作了个小程序 就碰到问题了 请各位大大帮帮忙
取消只看楼主 加入收藏
song3891
Rank: 1
等 级:新手上路
帖 子:12
专家分:0
注 册:2009-10-4
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:5 
大家好 我是新手 刚作了个小程序 就碰到问题了 请各位大大帮帮忙
#include<stdio.h>
#include<stdlib.h>
#include<malloc.h>
void main()
{
    int a,b,c=0,i,j;
    char *p,*q,m;
    p=new char[7];
    q=new char[7];
    for(a=1001;a<2200;a++)//这里如果把2200改成2300程序执行时就出错
    {
        b=0;
        itoa(a,p,10);
        q=p;
        for(i=0;i<4;i++)
        {
            p=q;
            p+=i;
            m=*p;
            for(j=i;j<4;j++)
            {
                p++;
                if(m==*p)b++;
            }
        }
        if(b==1)
            {c++;printf("%8d",a);}
    }
    printf("%8d",c);
}
请高手帮帮忙 这个小程序是把指定范围内的数字先变成字符串,再把字串中有两个同样字符的数选出来 可是我只要把上面标出的地方的数字改成超过2300这个值就出错,错误提示是“0X00406763”指令引用的“0X3534323e”内存。该内存不能为“read”.要终止程序,请单击确定,要调试程序,请单击取消

[ 本帖最后由 song3891 于 2009-10-5 08:57 编辑 ]
搜索更多相关主题的帖子: 2200 include 
2009-10-04 14:01
song3891
Rank: 1
等 级:新手上路
帖 子:12
专家分:0
注 册:2009-10-4
收藏
得分:0 
忘说了 是在VC++上编的
2009-10-05 09:43
song3891
Rank: 1
等 级:新手上路
帖 子:12
专家分:0
注 册:2009-10-4
收藏
得分:0 
以下是引用flyingcloude在2009-10-5 10:15:05的发言:

这个跟程序本身没有什么关系吧,说不定你今天能够运行了
我试了三四天了 最初用的TC2.0 后来又用的TC3.0现在用的VC++全都不行啊  不过 TC2.0和3.0可以多运行点数字才报错for(a=1001;a<2300;a++)这句可以取值20000左右才出错VC1000多就报错
2009-10-05 11:26
song3891
Rank: 1
等 级:新手上路
帖 子:12
专家分:0
注 册:2009-10-4
收藏
得分:0 
怎么没有帮帮我呀
2009-10-06 07:09
song3891
Rank: 1
等 级:新手上路
帖 子:12
专家分:0
注 册:2009-10-4
收藏
得分:0 
我又改了一下,不出错了  可不知道合不合理
把下面的两句移到循环里去
   p=new char[7];
    q=new char[7];
2009-10-06 18:08
song3891
Rank: 1
等 级:新手上路
帖 子:12
专家分:0
注 册:2009-10-4
收藏
得分:0 
谢谢 flyingcloude 我终于明白问题所在了 我都要放弃了 万分感谢
2009-10-07 07:02
快速回复:大家好 我是新手 刚作了个小程序 就碰到问题了 请各位大大帮帮忙
数据加载中...
 
   



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

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