windows 下 bison 命令列呼叫

2021-06-19 09:55:22 字數 1336 閱讀 7368

目標:將bison整合到visual studio中

做法:以cygwin下bison為例。

1.新建乙個批處理檔案 bison.bat,內如如下:

@set bison_dir="e:/sdk/cygwin/bin"

@set path=path;%bison_dir%

@rem bison command line

@rem usage

@rem bison.bat %grammer_file_name

@rem

@rem bison parameters used in our command line

@rem -l                     don't generate `#line' directives

@rem --report=all           complete report information

@rem  --report-file=file    write report to file

@rem --graph[=file]         output a graph of the automaton

@rem

@rem call bison

@echo ">>>>>>      bison parse begin...      >>>>>> "

bison.exe -l --report=all --report-file=%1.report       %1

@echo "<<<<<>>>>> "

bison.bat接收乙個引數,為bison語法描述檔案( *.y )

除了生成源**檔案外,同時會生成最完整報告,包括狀態機描述檔案,移進規約衝突資訊。

2. 以vs2008為例, 選擇 「工具」-> 「外部工具」,新建外部工具如下:

命令: c:/cygwin/bin/bison.bat

引數:($(itempath)

初始目錄:$(itemfilename)

勾選」使用輸出視窗「

3. 開啟bison語法檔案,選擇 「工具」-> 」bison「 進行呼叫。

正常情況下你將看到在vs2008 輸出視窗中如下列印:

">>>>>>      bison parse begin...      >>>>>> "

e:/work/lexertl/examples/example_work_with_bison>bison.exe -l --report=all --report-file="calc++-parser.yy".report       "calc++-parser.yy" 

"<<<<<>>>>> "

windows下的命令

1.檢視埠被占用 1 檢視特定埠占用情況命令 netstat ano findstr 埠 檢視所有埠占用情況命令 netstat ano 2 記下pid值 3 找到該pid對應得程式名稱 tasklist findstr pid的值 或者不使用命令,開啟任務管理器根據pid找到占用該埠對應的程式 4...

Unbuntu下使用bison編寫文字直譯器的方法

語法分析和詞法分析很多時候作用不僅僅是高階語言。也可以是用於文字直譯器,比如解析sql 語法或者指令碼語言等。從頭實現詞法和語法分析代價太大,可以借助工具,bison就是這樣的乙個工具。bison工具可以進行通過編寫簡單的文字規則和詞法規則,然後生成程式進行自動解析。不僅解析效率高,擴充套件也非常容...

常用網路命令(windows下)

特點 作用 格式 ping t a n count l size f i ttl v tos r count s count j hostlist k hostlist w timeout targetname 引數說明 特點 tracert命令通過遞增 生存時間 ttl 欄位的值將 icmp 回送...