批處理命令 goto 和

2021-09-07 04:40:39 字數 1350 閱讀 7141

談起goto,相信大家應該想到的是面向過程程式設計。其實,這就相當於當有人向你談起class,意味著你就懂得物件導向程式設計。如果你不懂,那麼你們的溝通將會很困難。不懂我說的啥意思嗎?請參見曾經分享王路的一篇文章《永遠不要對乙個外行聊你的專業》

一般常規的批處理命令,按照自上而下的順序逐行執行,也就是說,只有第一行命令執行之後,才可能執行第二行,第二行執行之後,才可以執行到第三行.....如此依次執行。那麼,如果對於不同的情況,需要執行不同的既定操作,常規的執行規則顯然是無法完成任務的,這種應用場景下怎麼辦呢?我們就需要引入流程跳轉的概念,即就是動用流程跳轉語句goto了。流程跳轉的含義:改變預設的執行順序,強制跳轉到指定的位置執行特定的程式塊。

為什麼要把goto和冒號這兩個命令聯合起來介紹?因為它們是分不開的,無論少了哪個或多了哪個都會出錯。goto是個跳轉命令,緊跟其之後的是標籤名;冒號是乙個標籤標誌,緊跟其之後的是標籤名,兩者合稱標籤。當程式執行到goto時,將自動跳轉到冒號定義的部分去執行(呵呵~試想一下,是不是分不開?)。goto語句與標籤一一呼應,在實現流程跳轉時相輔相成,缺一不可。

使用goto語句注意事項:

1. 一一對應。goto語句與標籤要相互對應。不允許只有goto語句而沒有相應的標籤段,否則,程式將找不到相應的標籤段而直接退出;只有標籤段而沒有goto語句是允許的,但不能實現流程跳轉功能,從**精簡的角度來看,有標籤段而沒有goto語句,則此標籤是多餘的,大可精剪。

1

@echo off

2 set /p input=請輸入字母a或b: 3if

"%input%

"=="a"

goto a4if

"%input%

"=="b"

goto b

5pause

6exit 78

:a9echo

您輸入的字母是a

10pause

11exit

1213

:b14

echo

您輸入的字母是b

15pause

16 exit

1

@echo off

2 set /p input=請輸入字母a或b: 3if

"%input%

"=="a"

goto a4if

"%input%

"=="b"

goto b

5pause

6exit 78

:a9echo

您輸入的字母是a

10pause

1112

:b13

echo

您輸入的字母是b

14pause

15 exit

批處理命令和變數

1。批處理命令 2。批處理變數及其型別 dos可以說是弱型別的 沒有像c語言那樣分得很細 你想一次ping遍區域網 可以這樣做 for l i in 1,1,255 do ping a 192.168.0.i 這樣就遍歷了從192.168.0.1到192.168.0.255這256個位址 注意這是在...

dos和批處理命令

這些是xp下的dos和批處理命令,dos用的可能不是太多,寫批處理的時候還是需要的,備查!assoc 顯示或修改副檔名關聯。at 計畫在計算機上執行的命令和程式。attrib 顯示或更改檔案屬性。break 設定或清除擴充套件式 ctrl c 檢查。cacls 顯示或修改檔案的訪問控制列表 acls...

批處理命令

time 2019 07 05 author ruo xiao 1 var 告訴編譯器,var 是變數,不是字串。2 var,僅用在 for 迴圈中。栗子 echo off set vars jack lucy nasa for t in vars do echo t pause 執行結果 注意 1...