できるなら二つの方法で動作を確認しよう
前回は、試しにテストプログラムを組んだら
マジで終わらん…。
と言うわけで検証には、時間がかかることもある…
と言う事になってしまった…。
そうプログラムには、予想以外のことが多々あるのだ!
と言う事にしよう…。
気を取りなおして…
スケールダウンしてやり直し…。
#include <stdio.h>
#include <time.h>
#define CHAR_MAX 0x7F
void main( void )
{
char tmpbuf[128];
char A, B, C;
int IA, IB, IC;
_strtime( tmpbuf );
printf( "開始:\t\t\t\t%s\n", tmpbuf );
for( A = 0 ; A < CHAR_MAX ; A++ )
{
for( B = 0 ; B < CHAR_MAX ; B++ )
{
C = A + B;
IA = A;
IB = B;
IC = IA + IB;
if( IC != ( int )C )
{
printf( "ちょっと違うよ!%d - %d\n", IC, ( int )C );
}
}
_strtime( tmpbuf );
printf( "経過(%d):\t\t\t\t%s\n", A, tmpbuf );
}
_strtime( tmpbuf );
printf( "終了:\t\t\t\t%s\n", tmpbuf );
}
開始: 12:30:15
~省略~
ちょっと違うよ!250 - -6
ちょっと違うよ!251 - -5
ちょっと違うよ!252 - -4
経過(126): 12:30:28
終了: 12:30:28
生きている内に終わった…。
良かった…。<ちょっと涙目…。
ちなみに、「for( A = 0 ; A <= CHAR_MAX ; A++ )」にすると
終わらない…。
これは、次のネタに取っておこう…。
て、何だったけ…。
おお、そうだ検証する方法だったっけ…。
結果を見ると左が正の数で右が負の数と…
まあ、違うのが一目瞭然!
つまり、希望した値と異なるものが来ることがあるのだ!
疲れたので、終わり。
| 固定リンク
コメント