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 TCP的客户端和服务器的互联
  • ¥15 VB.NET操作免驱摄像头
  • ¥15 笔记本上移动热点开关状态查询
  • ¥85 类鸟群Boids——仿真鸟群避障的相关问题
  • ¥15 CFEDEM自带算例错误,如何解决?
  • ¥15 有没有会使用flac3d软件的家人
  • ¥20 360摄像头无法解绑使用,请教解绑当前账号绑定问题,
  • ¥15 docker实践项目
  • ¥15 利用pthon计算薄膜结构的光导纳
  • ¥15 海康hlss视频流怎么播放