weixin_42703390 2019-02-27 22:07 采纳率: 100%
浏览 496
已采纳

c++主函数返回失败的问题!求指教

#include <stdio.h>
#include <string.h>
#define max 220

struct bigint{
    int digit[max/4],size;
    void init(){
        size = 0;
        for(int i=0;i<max;i++){
            digit[i] = 0;
        }
    }
    void set(char *a){
        init();
        int sl = strlen(a),j=0,k=1,t=0;
        for(int i=sl-1;i>=0;i--){
            t+= k*(a[i]-'0');
            k*=10;
            j++;
            if(j==4||i==0){
                k = 1;
                digit[size++] = t;
                t = j = 0;
            }
        }
    }
    void output(){
        for(int i=size-1;i>=0;i--){
            if(i!=size-1)   printf("%04d",digit[i]);
            else    printf("%d",digit[i]);  
        }
        printf("\n");
    }
    bigint operator + (const bigint &a) const {
        int l=size>a.size?size:a.size,carry=0;
        bigint ret;
        ret.init();
        for(int i=0;i<l;i++){
            int t = digit[i]+a.digit[i]+carry;
            carry = t/10000;
            ret.digit[ret.size++]=t%10000;
        }
        if(carry!=0)    ret.digit[ret.size++] = carry;
        return ret;
    }
}a,b,c;

int main(){
    char str1[max],ch;
    int l=0;
    bool flag=false;
    do{
        ch=getchar();
    }while(ch=='0');
    do{
        str1[l++]=ch;
        ch=getchar();
    }while(ch!='\n');
    str1[l++] = 0;
    a.set(str1);
    l=0;
    do{
        ch=getchar();
    }while(ch=='0');
    do{
        str1[l++]=ch;
        ch=getchar();
    }while(ch!='\n');
    str1[l++] = 0;
    b.set(str1);
//  a.set(str1);
//  b.set(str1);
//  a.output();
//  b.output();
    c = a+b;
            c.output();

printf("OK\n");//执行完这句不return 0
return 0;
}

代码如上图:
功能是把两个长整数相加。
然而神奇的事情发生了,如图!printf("OK\n")执行了,return值却不对!
图片说明

  • 写回答

1条回答 默认 最新

  • threenewbee 2019-02-27 23:51
    关注

    返回值是进程的返回值,如果你有调试器在运行,那么这个结果和main的return不同很正常

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 如何删除这个虚拟音频
  • ¥50 hyper默认的default switch
  • ¥15 网站打不开,提示502 Bad Gateway
  • ¥20 基于MATLAB的绝热压缩空气储能系统代码咨询
  • ¥15 R语言建立随机森林模型出现的问题
  • ¥15 中级微观经济学,生产可能性边界问题
  • ¥15 TCP传输时不同网卡传输用时差异过大
  • ¥15 请各位看看我写的属于什么算法,或者有更正确的写法?
  • ¥15 html5 qrcode 扫描器
  • ¥15 爬取网页信息并保存需要完整代码