2017-04-06 5 views
1

私はコードはちょうどその逆の順序で番号を出力Xcodeの8.3のXcode 8.3のコマンドラインC++

#include <iostream> 
using namespace std; 

void reverseString(int); 


int main(int argc, const char * argv[]) { 

    reverseString(123456); 
    return 0; 
} 

void reverseString(int numString){ 

    if(numString < 10){ 
     cout<<numString; 
    }else{ 
     cout<<numString % 10; 
     reverseString(numString/10); 
    } 
} 

で簡単なプログラムを持っています。

私はXcodeでプログラムを実行すると、私は終了コードで終了

プログラム取得:0

はそうのような主要な機能でprint文でプログラムを書き直し

int main(int argc, const char * argv[]) { 

cout<<"Hello"; 
reverseString(123456); 
    return 0; 
} 

同じ出力が得られます

終了コードで終了

プログラム:私はprint文cout<<"Hello\n";

の送信に\ nを追加した場合は0

私が手:

こんにちは

プログラムが終了で終了コード:0

何が起こっているのですかえ?私は最近、Xcode 8.3にアップデートしました。問題を引き起こしている可能性がありますか?もしそうなら、私はこれをどのように修正できますか?

注:私はファイル選択することで、自分のプロジェクトを作成しています - > [新しいプロジェクトを - > MacOSの - >コマンドラインプログラム

にも注意してください:私は、過去に作成したプログラムがまだ正常に実行されます。

答えて

2

"\ n"を送信するまで、coutは何も印刷しません。コード内のある時点で、あなたはcoutを実行する必要があります< < "\ n";

+0

それは理由はありますか?それはXcode固有のものですか?他のIDEは文を正しく出力しません。<< "\ n" – huddie96

+0

Xcode固有のものではありません。目的は、\ n(またはstd :: endl)で終了した行のみが出力される複数行のコードから標準出力端末に出力する文字列を構築できるようにすることです。 – Kenny

+0

いつもcout .flush()を実行すると出力が強制的に終了します。 – Kenny

関連する問題