資源簡介
編譯原理掃描程序,每個對應的關鍵字或者符號,數字都有對應的行輸出
代碼片段和文件信息
#include
#include
#include//??
#include
#include
#define?START?1????//初態
#define?INNUM?2????//數字狀態
#define?INID?3?????//標識符狀態
#define?INASSIGN?4?//賦值符號狀態?
#define?INCOMMENT?5//注釋狀態
#define?DONE?6?????//終態
#define?bufsize?9999//緩存大小
int?i=0jk=0n=0;?//記錄指針位置的全局變量
int?read(FILE?*frchar?c[]int?&i)
{
???c[i]=getc(fr);?//將文件讀入緩沖區
???while(c[i]!=EOF&&i ???{????????c[i]=getc(fr);
i++;
}
???if(i==bufsize)
???{???
???????i--;
???while(c[i]!=‘\n‘)//文件超出緩沖區的大小,回退到最近一個完整的語句。
???{???i--;
???????fseek(fr-11);//指針回退一格
???}
??//?c[i+1]=‘\0‘;
??//fseek(fr11);
???return?1;
???}//文件大于緩沖區的大小,則分次讀入緩沖區
???else?
???return?0;//文件已讀完畢,結束
}
void?readbyline(FILE?*fwchar?c[]int?&n)
{
??do??/
- 上一篇:經典的吃豆游戲及源代碼
- 下一篇:c++實現電梯調度模擬
評論
共有 條評論