/****************************/ /* 画面時計(大きい文字) */ /****************************/ #include #include #include #include #include #include char buf[8][64]; // 画面表示用 8x64文字 void Disp0(int); // 0 を設定 void Disp1(int); // 1 を設定 void Disp2(int); // 2 を設定 void Disp3(int); // 3 を設定 void Disp4(int); // 4 を設定 void Disp5(int); // 5 を設定 void Disp6(int); // 6 を設定 void Disp7(int); // 7 を設定 void Disp8(int); // 8 を設定 void Disp9(int); // 9 を設定 void DispC(int); // : を設定 void main( ) { unsigned long t,tO=0; char c[128]; int i,j,k; while( 1 ) { t=time(NULL); // 現在の時刻(秒) if ( t==tO ) continue; // 時刻変化なし tO=t; strcpy(c,ctime(&t)); // 現在の時刻(文字列) for( j=0,k=0; j<8; j++,k+=8 ) { switch( c[11+j] ) // 時分秒の文字 XX:XX:XX { case '0': Disp0(k); break; // 0 を設定 case '1': Disp1(k); break; // 1 を設定 case '2': Disp2(k); break; // 2 を設定 case '3': Disp3(k); break; // 3 を設定 case '4': Disp4(k); break; // 4 を設定 case '5': Disp5(k); break; // 5 を設定 case '6': Disp6(k); break; // 6 を設定 case '7': Disp7(k); break; // 7 を設定 case '8': Disp8(k); break; // 8 を設定 case '9': Disp9(k); break; // 9 を設定 case ':': DispC(k); break; // : を設定 } } system("cls"); // 画面消去 for( i=0; i<8; i++ ) // 第0行〜第7行まで { printf("\n%.64s",&buf[i][0]); // 横1行64文字表示 } fflush(stdout); // 画面出力 if ( kbhit( )!=0 ) break; // キーが押された Sleep(900); } } void Disp0( /*------------*/ /* 0を設定 */ /*------------*/ int j) { memcpy(&buf[0][j]," ###### ",8); memcpy(&buf[1][j]," # # ",8); memcpy(&buf[2][j]," # # ",8); memcpy(&buf[3][j]," # # ",8); memcpy(&buf[4][j]," # # ",8); memcpy(&buf[5][j]," # # ",8); memcpy(&buf[6][j]," ###### ",8); } void Disp1( /*------------*/ /* 1を設定 */ /*------------*/ int j) { memcpy(&buf[0][j]," # ",8); memcpy(&buf[1][j]," # ",8); memcpy(&buf[2][j]," # ",8); memcpy(&buf[3][j]," # ",8); memcpy(&buf[4][j]," # ",8); memcpy(&buf[5][j]," # ",8); memcpy(&buf[6][j]," # ",8); } void Disp2( /*------------*/ /* 2を設定 */ /*------------*/ int j) { memcpy(&buf[0][j]," ###### ",8); memcpy(&buf[1][j]," # ",8); memcpy(&buf[2][j]," # ",8); memcpy(&buf[3][j]," ###### ",8); memcpy(&buf[4][j]," # ",8); memcpy(&buf[5][j]," # ",8); memcpy(&buf[6][j]," ###### ",8); } void Disp3( /*------------*/ /* 3を設定 */ /*------------*/ int j) { memcpy(&buf[0][j]," ###### ",8); memcpy(&buf[1][j]," # ",8); memcpy(&buf[2][j]," # ",8); memcpy(&buf[3][j]," ###### ",8); memcpy(&buf[4][j]," # ",8); memcpy(&buf[5][j]," # ",8); memcpy(&buf[6][j]," ###### ",8); } void Disp4( /*------------*/ /* 4を設定 */ /*------------*/ int j) { memcpy(&buf[0][j]," # # ",8); memcpy(&buf[1][j]," # # ",8); memcpy(&buf[2][j]," # # ",8); memcpy(&buf[3][j]," ###### ",8); memcpy(&buf[4][j]," # ",8); memcpy(&buf[5][j]," # ",8); memcpy(&buf[6][j]," # ",8); } void Disp5( /*------------*/ /* 5を設定 */ /*------------*/ int j) { memcpy(&buf[0][j]," ###### ",8); memcpy(&buf[1][j]," # ",8); memcpy(&buf[2][j]," # ",8); memcpy(&buf[3][j]," ###### ",8); memcpy(&buf[4][j]," # ",8); memcpy(&buf[5][j]," # ",8); memcpy(&buf[6][j]," ###### ",8); } void Disp6( /*------------*/ /* 6を設定 */ /*------------*/ int j) { memcpy(&buf[0][j]," ###### ",8); memcpy(&buf[1][j]," # ",8); memcpy(&buf[2][j]," # ",8); memcpy(&buf[3][j]," ###### ",8); memcpy(&buf[4][j]," # # ",8); memcpy(&buf[5][j]," # # ",8); memcpy(&buf[6][j]," ###### ",8); } void Disp7( /*------------*/ /* 7を設定 */ /*------------*/ int j) { memcpy(&buf[0][j]," ###### ",8); memcpy(&buf[1][j]," # ",8); memcpy(&buf[2][j]," # ",8); memcpy(&buf[3][j]," # ",8); memcpy(&buf[4][j]," # ",8); memcpy(&buf[5][j]," # ",8); memcpy(&buf[6][j]," # ",8); } void Disp8( /*------------*/ /* 8を設定 */ /*------------*/ int j) { memcpy(&buf[0][j]," ###### ",8); memcpy(&buf[1][j]," # # ",8); memcpy(&buf[2][j]," # # ",8); memcpy(&buf[3][j]," ###### ",8); memcpy(&buf[4][j]," # # ",8); memcpy(&buf[5][j]," # # ",8); memcpy(&buf[6][j]," ###### ",8); } void Disp9( /*------------*/ /* 9を設定 */ /*------------*/ int j) { memcpy(&buf[0][j]," ###### ",8); memcpy(&buf[1][j]," # # ",8); memcpy(&buf[2][j]," # # ",8); memcpy(&buf[3][j]," ###### ",8); memcpy(&buf[4][j]," # ",8); memcpy(&buf[5][j]," # ",8); memcpy(&buf[6][j]," ###### ",8); } void DispC( /*------------*/ /* :を設定 */ /*------------*/ int j) { memcpy(&buf[0][j]," ",8); memcpy(&buf[1][j]," ",8); memcpy(&buf[2][j]," # ",8); memcpy(&buf[3][j]," ",8); memcpy(&buf[4][j]," # ",8); memcpy(&buf[5][j]," ",8); memcpy(&buf[6][j]," ",8); }