配列で足し続ける

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
モンク

配列で足し続ける

#1

投稿記事 by モンク » 14年前

初歩的な質問ですいません。
int time;
time++;

とやればtimeが1秒間に60回たされると思うんですが
配列を使う場合、

int time[3];
time[0]++;
time[1]++;
time[2]++;

以外のやり方ありませんか?
ゲーム実行中は常にそれぞれのタイムが加算され続けたいです。

アバター
bitter_fox
記事: 607
登録日時: 14年前
住所: 大阪府

Re: 配列で足し続ける

#2

投稿記事 by bitter_fox » 14年前

モンク さんが書きました:time++;
とやればtimeが1秒間に60回たされると思うんですが
ゲーム実行中は常にそれぞれのタイムが加算され続けたいです。
1秒間に60回というのはFPS制御によってということですよね?
モンク さんが書きました: int time[3];
time[0]++;
time[1]++;
time[2]++;

以外のやり方ありませんか?

コード:

time[1] = time[2] = ++time[0];
といった書き方も可能です。(time[0], time[1], time[2]がともに同じ値のとき)

同じ値でなく何度もインクリメントのコードを書かなくてはならないのが煩わしいのであれば、関数にするべきです。

コード:

void IncrementTime(int *time, int arrayMax)
{
	int i;

	for (i = 0; i < arrayMax; i++)
	{
		time[i]++;
	}
}

box
記事: 2002
登録日時: 14年前

Re: 配列で足し続ける

#3

投稿記事 by box » 14年前

モンク さんが書きました: int time;
time++;

とやればtimeが1秒間に60回たされると思うんですが
そのコードを書けばそうなる、という仮説を実証するために、何か行ないましたか?
バグのないプログラムはない。
プログラムは思ったとおりには動かない。書いたとおりに動く。

閉鎖

“C言語何でも質問掲示板” へ戻る