校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃

主頁 > 知識(shí)庫 > cmd goto命令 流程跳轉(zhuǎn)

cmd goto命令 流程跳轉(zhuǎn)

熱門標(biāo)簽:aa專業(yè)電話外呼系統(tǒng) 浙江語音外呼系統(tǒng)招商 95專業(yè)外呼線路是怎么回事 沈陽電銷 無錫極信防封電銷卡價(jià)格 谷歌地圖標(biāo)注錯(cuò)位 四川防封電銷卡套餐 用電話機(jī)器人取代人工 外呼獲客系統(tǒng)
如果對(duì)不同的情況,需要執(zhí)行不同的既定操作,若還是按照常規(guī)的執(zhí)行流程的話,是無法完成任務(wù)的,這個(gè)時(shí)候,就需要引入流程跳轉(zhuǎn)的概念,動(dòng)用流程跳轉(zhuǎn)語句 goto 了。流程跳轉(zhuǎn)的含義是:改變默認(rèn)的執(zhí)行順序,強(qiáng)制跳轉(zhuǎn)到指定的位置執(zhí)行特定的程序塊。

  先來看個(gè)例子:假設(shè)需要判斷用戶輸入的是A還是B,代碼可以寫成這樣:
復(fù)制代碼 代碼如下:

@echo off
set /p input=請(qǐng)輸入字母A或B:
if "%input%"=="A" goto A
if "%input%"=="B" goto B
pause
exit

:A
echo 您輸入的字母是A
pause
exit

:B
echo 您輸入的字母是B
pause
exit   

按照一般的執(zhí)行流程,所有的代碼都會(huì)自上而下逐行執(zhí)行一次,結(jié)果將顯示"您輸入的字母是A"和"您輸入的字母是B"這兩行內(nèi)容,很顯然,這是達(dá)不到我們的要求的;但是,實(shí)際的結(jié)果是:如果您輸入的字母非A即B,則結(jié)果只會(huì)顯示"您輸入的字母是A"或者"您輸入的字母是B";也就是說,代碼的執(zhí)行順序發(fā)生了改變,不再一成不變地自上而下逐行執(zhí)行了:當(dāng)輸入字母A后,將執(zhí)行第一條if語句,此條語句執(zhí)行后,將跳轉(zhuǎn)到標(biāo)簽段:A,從而繞過了第一條if語句和:A之間的所有代碼行;當(dāng)輸入字母B后,將執(zhí)行頭兩條if語句,當(dāng)執(zhí)行完第二條if語句后,將跳轉(zhuǎn)到標(biāo)簽段:B,從而繞過了第二條if語句和:B之間的所有代碼行。

  從上面的例子可以看到,要讓goto語句起作用,還需要:A或:B之類的標(biāo)簽段的配合。所謂的標(biāo)簽段,就是這樣的一些代碼塊:在首行上以單個(gè)冒號(hào)打頭,其后緊跟一串字符,第二行及其之后的所有行為代碼語句行。在這里,第一行的冒號(hào)是標(biāo)簽標(biāo)志,緊跟它之后的字符串是標(biāo)簽名,兩者合稱標(biāo)簽。goto語句后面的部分為標(biāo)簽名,指引著該語句執(zhí)行完之后該跳到轉(zhuǎn)何方,標(biāo)簽則接收goto語句的跳轉(zhuǎn)指令,引導(dǎo)著goto語句的后續(xù)操作。goto語句和標(biāo)簽互相呼應(yīng),在實(shí)現(xiàn)流程跳轉(zhuǎn)時(shí)相輔相成,缺一不可。

  下面說一下使用跳轉(zhuǎn)語句goto的注意事項(xiàng):

  1、goto語句和標(biāo)簽要互相呼應(yīng),不能只有g(shù)oto語句而沒有相應(yīng)的標(biāo)簽段,否則,程序?qū)⒄也坏较鄳?yīng)的標(biāo)簽段而直接退出;只有標(biāo)簽段而沒有g(shù)oto語句是允許的,但不能實(shí)現(xiàn)流程跳轉(zhuǎn)功能,從代碼精簡的角度來看,有標(biāo)簽段而沒有g(shù)oto語句,則此標(biāo)簽是多余的,可以精簡掉;
  2、若有多個(gè)標(biāo)簽段,則需要注意標(biāo)簽段之間是否需要添加合適的退出語句來終止程序繼續(xù)向下執(zhí)行,這是很多新手很容易犯錯(cuò)的地方,需要謹(jǐn)慎。以上面這段代碼為例,如果去掉:A和:B之間的exit語句,那么,當(dāng)輸入字母A之后,結(jié)果將同時(shí)顯示"您輸入的字母是A"和"您輸入的字母是B"這兩行內(nèi)容,而保留exit語句將只會(huì)在顯示"您輸入的字母是A"后,按任意鍵推出批處理程序,因?yàn)榕幚硎亲陨隙轮鹦袌?zhí)行的,即使用goto語句跳轉(zhuǎn)之后,在新的位置上,這一執(zhí)行流程仍然會(huì)保持,直到碰上另一個(gè)流程跳轉(zhuǎn)語句,執(zhí)行過程并不會(huì)在兩個(gè)標(biāo)簽段之間自動(dòng)終止。
  3、標(biāo)簽名只可以使用常量,而不能使用變量;
  4、若有同名的標(biāo)簽段,將執(zhí)行位于最頂層的標(biāo)簽段,其后的標(biāo)簽段是否得到執(zhí)行,將視具體的情況加以處理。
您可能感興趣的文章:
  • 批處理中常用命令介紹(Echo、rem、goto、call、pause、if、for)
  • cmd批處理 goto call命令使用說明
  • PHP goto語句簡介和使用實(shí)例
  • dos 流程跳轉(zhuǎn) goto
  • js控制的回到頁面頂端goTop的代碼實(shí)現(xiàn)
  • Go語言流程控制之goto語句與無限循環(huán)
  • asp.net中引用同一個(gè)項(xiàng)目中的類庫 避免goToDefinition時(shí)不能到達(dá)真正的定義類
  • 深入理解goto語句的替代實(shí)現(xiàn)方式分析
  • php5.3 goto函數(shù)介紹和示例
  • C++跳轉(zhuǎn)語句之Goto對(duì)變量定義的影響詳解

標(biāo)簽:南平 迪慶 煙臺(tái) 廣安 青島 常德 興安盟 連云港

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《cmd goto命令 流程跳轉(zhuǎn)》,本文關(guān)鍵詞  cmd,goto,命令,流程,跳轉(zhuǎn),;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《cmd goto命令 流程跳轉(zhuǎn)》相關(guān)的同類信息!
  • 本頁收集關(guān)于cmd goto命令 流程跳轉(zhuǎn)的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    主站蜘蛛池模板: 安陆市| 镇远县| 安达市| 阿拉尔市| 田东县| 泌阳县| 阿尔山市| 北京市| 山西省| 当涂县| 白城市| 林西县| 英德市| 天等县| 嵩明县| 弋阳县| 瓦房店市| 油尖旺区| 房产| 玉屏| 信丰县| 嘉鱼县| 平安县| 栖霞市| 岱山县| 浦东新区| 延川县| 新建县| 新兴县| 夹江县| 揭东县| 保康县| 莱西市| 莫力| 芜湖市| 广灵县| 虹口区| 崇左市| 阿坝县| 华宁县| 岗巴县|