2009年4月30日 星期四

C++ 用檔案當getchar()的資料來源

getchar()通常是拿來取得鍵盤輸入

但是他其實是可以用檔案當他的資料來源的

今天寫了一支scan

void Lexer::readch() {
int i=getchar();
if(i!=-1)
{peek=(char)i;}
else
{throw exception();}
}


其中外面會有個無限回圈不斷call這個函式

他可以接受使用者輸入來分出Token

但是也可以接受檔案 假設我把他編譯成scan

>./scan < Test1.txt


這樣就可以用Test1.txt的內容當getchar的input

他是利用到unix的Re-direct(重新導向)的方式

沒有留言: