2

1 日の時間を保持する配列を作成して、時計をループできるようにしようとしています。

私は持っている:

int hourArray[24] = {12, 01, 02, 03, 04, 05, 06, 07, 08, 09, 10, 11, 12, 01, 02,
                     03, 04, 05, 06, 07, 08, 09, 10, 11};

次の番号で順番にエラーが発生しています08, 09, 08, 09

それは私に言います:

エラー: 8 進数が無効です

私はこれまでにこれに遭遇したことはありませんが、それを回避する方法があるかどうか疑問に思っていますか?

4

1 に答える 1

8

確かに: 8 進数を意味しない場合は、先頭に 0 を使用しないでください:

int hourArray[24] = {12, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 
   1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11};

配列内の数値のみを指定していることを忘れないでください。数値の特定のテキスト表現ではありません。(したがって、それを書く012のと同じことを書く10と、結果として同じnumberになります。)これらの数値を後で先頭に 0 を付けてフォーマットする場合、それはコードのまったく異なる側面です。

于 2012-04-04T23:25:43.183 に答える