私は行列を持っているプロジェクトに取り組んでいます。文字を上下左右に動かすことで行列を処理しています。私は文字配列に動きを保存しています。今、私はそれが他の移動が実行された後、マトリックスの最後の10状態だけを印刷したいと思います。しかし、私は他の動きをプリントすることを望んでいません。ちょうどマトリックスの最後の10の状態です。Cのコードの一部をスキップするプリプロセッサ
だから私はこのような動きをループしています:
int i = 0;
for (; i < strlen(movesArray); i++) {
operation = movesArray[i]; // move
switch (operation) {
case 'v': // process the moves
}
それから私はこのような何かまだfor
ループ内ながら:どこのように、それはすべての動きを印刷しているが
#ifdef NDEBUG // but this printing every state from 1 to 99
if(i >= strlen(movesArray) - 10)
printf("%s %d:\n", "Move", i);
print(matrix);
#endif
を私は今のところ最後の10人だけを望んでいます。誰も私を正しい方向に導くことができますか?私は今、数時間それをしています。
もし私が99の動きを持っていれば、それはすべての動きを実行するはずですが、マトリックスの最後の10個の状態を印刷するだけで、マトリックスで行われた動きを含めるべきです。
私は-D
フラグでプログラムをコンパイルします。