2011-08-08 4 views
0

現在、エラーが発生したときにいつでも値を表示できるように、プログラムに値を格納しようとしています。ここに私のプログラムは次のとおりです。値を格納するTurbo C++

void function() 
{ 
    float abc[2]; 
    int i = 0; 
    if (i/2 != 0) 
    { 
     i++; 
     abc[0] = 1; 
    } 
    abc[1] = abc[0]; 
    cout << abc[1]; 
} 

実際に、私のプログラムは、それが私のプログラムを更新し続ける、私にabc[1]が表示されますので、私は、それを終了するまで、この関数を呼び出し続けます。私が望むのは、ifステートメントの条件が満たされていない場合です。abc[1]は、それ自体既知の値を表示します。どうすればいいのですか?。

+2

あなたはあなたの関数への別の呼び出しの間の永続的配列をしたい場合は、あなたは、静的な配列を使用する必要があります..! – Muse

答えて

2

私は以下のようなものを、あなたがしようとしている結果が、あなたはABCを行う必要があると私は、静的な正確に何かわからない:

void function() 
{ 
    static float abc[2]; 
    static int i = 0; 
    if (i/2 != 0) { i++; abc[0] = 1; } 
    abc[1] = abc[0]; 
    cout<<abc[1]; 
} 

これは、彼らは、関数呼び出しの間その値を保持することができます。今のところその機能はかなりばかげていますが、あなたが何をしようとしているのかわからないので、何をお勧めするのか分かりません。

+0

笑私はワットuの意味を理解している、プログラムは全く意味がありません、私はランダムに私は実際のプログラムが非常に長くて乱雑である原因になっている状況を模倣するためにそれを作成します。 – Chang

+0

Thnxそれは今働いています。 – Chang

0

私はあなたが意味していることを完全に理解していませんが、印刷のために以前の値を保存したいのであれば、なぜabcPrevious変数がありませんか?各ループの終わりに新しい値で更新します。

void function() 
{ 
    static float abcPrevious; 
    static float abc[2]; 
    static int i = 0; 
    if (i/2 != 0) 
    { 
     i++; 
     abc[0] = 1; 
    } 
    abcPrevious = abc[1]; 
    abc[1] = abc[0]; 
    cout << "abc[1] is: " << abc[1] << "\nabcPrevious is: " << abcPrevious << endl; 
} 

うまくいけば、このことができます:D

関連する問題