這是一個顯示時間。
#include <windows.h>
#include <conio.h>
#include <stdio.h>
#include<time.h>
int ch=0;
time_t now;
void gotoxy(int x, int y)
{
COORD coord;
coord.X = x; coord.Y = y;
SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE), coord);
return;
}
void setcolor(WORD color)
{
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),color);
return;
}
void clrscr()
{
COORD coordScreen = { 0, 0 };
DWORD cCharsWritten;
CONSOLE_SCREEN_BUFFER_INFO csbi;
DWORD dwConSize;
HANDLE hConsole = GetStdHandle(STD_OUTPUT_HANDLE);
GetConsoleScreenBufferInfo(hConsole, &csbi);
dwConSize = csbi.dwSize.X * csbi.dwSize.Y;
FillConsoleOutputCharacter(hConsole, TEXT(' '), dwConSize, coordScreen, &cCharsWritten);
GetConsoleScreenBufferInfo(hConsole, &csbi);
FillConsoleOutputAttribute(hConsole, csbi.wAttributes, dwConSize, coordScreen, &cCharsWritten);
SetConsoleCursorPosition(hConsole, coordScreen);
return;
}
void getkey(void)
{
if (kbhit())
{
ch=getch();
}
}
int main(void)
{
while (ch!=27)
{
getkey();
time(&now);
gotoxy(50,1) ;
setcolor(31);
printf("%s", ctime(&now));
setcolor(0);
}
setcolor(7);
clrscr();
gotoxy(2,23) ;
return 0;
}
要在程序中同時做其他的事情,將兩個任務分成單獨的線程。如果您擁有最新的編譯器,則可以使用pthread或C++ 11的內置線程功能。你應該能夠在網上找到大量的這些信息和指南。 – Michael 2012-08-02 15:11:56