C 端末に対する読み取りと書き込み
ナビゲーションに移動
検索に移動
C 端末に対する読み取りと書き込み
- Comand prompt から programを起動すると、shell が入力 stream と出力 streamをprogramに結びつける。
- ということは、getcharとprintfを使って、これらのdefault streamに対する読み取り、書き込みを行えば、userとの対話も可能となるはず。
カノニカルモード(canonical mode)と非カノニカルモード(non-canonical mode)
- canonical modeは標準modeともいわれ、userの入力を、1行単位で処理する。1行が確定するまでは、applicationから文字を読み取ることはできない。
- non-canonical modeでは、入力された文字の処理をapplicationから制御することができる。
#include <stdio.h> int main() { char *menu[] = { "a - add something", "r - remove something", "q - quit", NULL, }; int chosen = 0; int selected; char **option; option = menu; printf("MENU\n"); while(*option) { printf("\t%s\n", *option); option++; } int i; do { selected = getchar(); for (i = 0; i<3; i++) { if (selected == menu[i][0]) { printf("Selected: %s\n", menu[i]); break; } } if (selected == 'q') { break; } }while(1); }
この本からの覚書。
© 2006 矢木浩人