編譯原理詞法分析程式設計(C )

2021-10-23 01:57:28 字數 1524 閱讀 8931

1.對源程式進行理解,從pl0文件中抽取出詞法部分的**,單獨作為乙個程式,變成乙個詞法程式,用visual6.0或者dev c++進行編譯,編譯成為可執行檔案;

詞法分析部分的**如下:

#include

#include

#include

#include

#include

#include

#include

#include

#include

#include

#include

using

namespace std;

map word;

//應用map資料結構形成乙個string->string的對應

std::map

::iterator it;

//用來遍歷整個對應關係的迭代器

void

map_init()

struct nodeaa[

10000];

intmain()

it=word.

find

(word1);if

(it!=word.

end())

else

i--;}

elseif(

isdigit

(str[i]))

if(isalpha

(str[i]))

else

i--;}

else

if(str[i]

=='<'

)else

if(str[i]

=='='

)else

if(str[i]

!=' '||!

isdigit

(str[i])||

!isalpha

(str[i]))

else

i--;}

else

if(str[i]

=='>'

)else

if(str[i]

!=' '||!

isdigit

(str[i])||

!isalpha

(str[i]))

else

i--;}

else

if(str[i]

==':'

)else

if(str[i]

!=' '||!

isdigit

(str[i])||

!isalpha

(str[i]))

else

i--;}

else

else}}

//輸出流,輸出到對應的結果檔案中

if(outfile.

is_open()

) outfile.

close()

;}

infile.

close()

;return0;

}

編譯原理 詞法分析程式設計

一 實驗目的 設計 編制並除錯乙個簡單語言cp compiler principle 的詞法分析程式,加深對詞法分析原理的理解。二 實驗內容 說明 1 cp語言是大小寫敏感語言 2 字母為a za z,數字為0 9 3 學有餘力同學可以在上述詞法要求基礎上進行擴充和改造 4 每行 中從 開始的部分為...

編譯原理詞法分析

編譯原理實驗一 詞法分析練習 include include include define tokenmax 100 define progmax 1000 define k esc 27 void analytics 詞法分析 void scanner 輸入掃瞄 bool isletter cha...

詞法分析(編譯原理)

詞法分析 英語 lexical analysis 是電腦科學中將字串行轉換為單詞 token 序列的過程。進行詞法分析的程式或者函式叫作詞法分析器 lexical analyzer,簡稱lexer 也叫掃瞄器 scanner 詞法分析器一般以函式的形式存在,供語法分析器呼叫。完成詞法分析任務的程式稱...