2013-05-14 50 views
0

我剛開始學習C++,針對的主要方法我做的:返回從主管道破裂我的程序零

#include <iostream> 
using namespace std; 

int main() 
{ 
    int d; 
    int n; 
    cout <<"Enter the denominator: " << endl; 
    cin >> d; 
    cout <<"Enter the numerator: " << endl; 
    cin >> n; 
    cout <<"The result of operation is: " << endl; 
    cout << (double)n/d << endl; 
    cout <<"Done"; 
    return 0; 
} 

它不會產生輸出,但如果我刪除返回0,我會產生正確的輸出。 C++中的主要方法不應總是返回一個整數嗎?

+0

它適合我。 – icktoofay 2013-05-14 01:56:50

+0

函數'main'是一個特殊情況,因爲那裏(並且只有那裏)不必是'return'語句,即使該函數返回一個'int'。如果沒有顯式的'return'語句,則返回'0'。 [basic.start.main]/5 – dyp 2013-05-14 01:57:40

+0

請參閱[這個問題](http://stackoverflow.com/q/636829/335858)討論'main()'應該返回的內容。 – dasblinkenlight 2013-05-14 01:59:01

回答

0

我經歷了你的代碼,一切似乎都是正確的。當我運行它時,它工作正常。如果你還沒有解決這個問題,那就試着把你的代碼切入一個新的項目。我知道這聽起來很愚蠢,但它應該起作用。

我希望這會幫助你。

+0

是的,它的工作原理。但我不知道究竟是什麼問題。 – 14K 2013-05-14 04:26:45

1

嘗試cout.flush();返回之前。 它強制緩衝的數據被髮送到輸出。

+0

與程序退出一樣,所以我不確定這會有所幫助。 – paxdiablo 2013-05-14 02:01:55

+1

'endl'和'cin'操作也強制輸出緩衝區被刷新。 – dyp 2013-05-14 02:02:33

+0

@paxdiablo,打印應顯示在調試窗口中。 – 2013-05-14 03:06:05