#1274: RE??????


B88000005 (喔~~!!XD)

學校 : 國立內壢高級中學
編號 : 4538
來源 : [118.167.234.168]
最後登入時間 :
2021-05-12 14:50:32
c007. 00272 - TeX Quotes -- UVa272 | From: [220.138.46.240] | 發表日期 : 2009-01-31 20:32

執行時發生錯誤 (SIGABRT)(6)!!
系統呼叫 abort 函式!!
可能的原因為取用了超過string長度的位置、指標錯誤或 overflow。

 

為什麼每次解題都會出現這個...

以下是我的程式碼...

#include <iostream>

using namespace std;

int main()
{
    string a;
    while(getline(cin,a)){
        while(a.find('"')!=-1){
            if(a=="end-of-file"){
                return 0;
            }
            a[a.find('"')]='#';
            a.insert(a.find('#'),"`");
            a[a.find('#')]='`';
            if(a.find('"')==-1){
                cout<<a<<endl;
                getline(cin,a);
                if(a=="end-of-file"){
                    return 0;
                }
            }
            a[a.find('"')]='#';
            a.insert(a.find('#'),"'");
            a[a.find('#')]='\'';
        }
        cout<<a<<endl;
    }
    return 0;
}

 

我自己也試了一下...

輸入:123""""""""""""""""""""""""""""""""""""

可以正常輸出!

但是再輸入一個"1",

他就爆了=.="

STRING的限制是什麼??

 
ZeroJudge Forum