Pause功能的实现
来自KlniuWiki
#include <stdio.h> #include <stdlib.h> #include <termios.h> #include <unistd.h> int getch(); void press_key(); int main() { printf("Hello world!\n"); press_key(); return 0; } void press_key() { printf("Press any key to continue...\n"); getch(); } int getch() { struct termios tm,tm_old; int fd = STDIN_FILENO,c; if (tcgetattr(fd, &tm) < 0) { return -1; } tm_old = tm; cfmakeraw(&tm); if (tcsetattr(fd,TCSANOW, &tm) < 0) { return -1; } c = fgetc(stdin); if (tcsetattr(fd,TCSANOW,&tm_old) < 0) { return -1; } return c; }
参考文献
- chenlei. linux c++程序暂停问题. [EB/OL], 2010-01-23. [2011-05-07]. http://chenlei.is-programmer.com/posts/15065.html.