-1

この単純な C++ コードを動作させることができません。

int secInt = 5;

double rubbish = secInt/60;

double factor = floor(rubbish);

3行目から常に「エラー:イニシャライザ要素が定数ではありません」が表示されます

Factor はログで常に 0.00 を返します

誰でもこれを手伝ってもらえますか、私は非常に単純なことを見落としていると感じています。

このエラーの例は、http: //ideone.com/2Wrkr9で確認できます。

4

3 に答える 3

1

コードを関数で囲むのを忘れました。

これを試して。

int main()
{
    int secInt = 5;

    double rubbish = secInt/60.0;

    double factor = floor(rubbish);
}

C++ は という名前の関数でコードの実行を開始しmain、そこから main から呼び出される関数を呼び出します。

于 2013-04-21T02:36:12.773 に答える
1
double rubbish = secInt/60;

する必要があります

double rubbish = static_cast<double>(secInt)/60;

ので、上記の修正でもsecInt =5そうなるfloor(rubbish)はずです。0

mainソース ファイルに他の関数がない場合は、少なくとも 1 つの関数が必要です。mainがエントリーポイントです。

int main()
{
 int secInt = 5;
 double rubbish = static_cast<double>(secInt)/60.0;

 double factor = floor(rubbish);
 return 0;
}
于 2013-04-21T02:36:20.270 に答える