printf関数の表示が
Posted: 2011年3月02日(水) 15:34
VC++2008EE Windows7
猫でもわかるプログラミング第1部C言語編 第13章while文のtime関数について教えてほしいです。
エラーも警告もでないのですが実行結果でがおかしくなってしまいます。
僕の環境だけなんでしょうか?原因がわかる方教えてほしいです。
C言語は入門レベルです
猫でもわかるプログラミング第1部C言語編 第13章while文のtime関数について教えてほしいです。
エラーも警告もでないのですが実行結果でがおかしくなってしまいます。
僕の環境だけなんでしょうか?原因がわかる方教えてほしいです。
C言語は入門レベルです
// main.c
#include <stdio.h>
#include <time.h>
int main(void)
{
time_t t1, t2;
int i = 1;
time( &t1 ); // t1に、表示前の秒数を格納
while( i <= 5000 ){
printf( "%d, ", i++ );
}
time( &t2 ); // t2に、表示後の秒数を格納
printf( "\n" );
// time_tは、long型なので%ldとなることに注意!
printf( "time1 = %ld time2 = %ld\n", t1, t2 ); // この文はtime1 = 1299047160 time2 = 0となってtime2がおかしい
printf( "time1=%ld ", t1 ); // この文は正しく表示される
printf( "time2=%ld\n", t2 ); // でもこの文は正しく表示される
printf( "かかった時間は、%d秒です。\n", t2 - t1 ); // この文は正しく表示される
return 0;
}