新聞中心
什么是goto語(yǔ)句呢?
1.C語(yǔ)言中提供了可以隨意濫用的 goto語(yǔ)句和標(biāo)記跳轉(zhuǎn)的標(biāo)號(hào)。
最常見(jiàn)的用法就是終止程序在某些深度嵌套的結(jié)構(gòu)的處理過(guò)程。
#define _CRT_SECURE_NO_WARNINGS 1
#includeint main() {
again:
printf("hehe\n");
printf("haha\n");
printf("heiehi\n");
goto again;
return 0;
}
運(yùn)行結(jié)果:屏幕上死循環(huán)打印hehe haha heihei
2.goto語(yǔ)言真正適合的場(chǎng)景如下:
for(...)
for(...)
{
for(...)
{
if(disaster)
goto error;
}
}
…
error:
if(disaster)
// 處理錯(cuò)誤情況
3.使用goto語(yǔ)句寫(xiě)一個(gè)關(guān)機(jī)程序:讓電腦在60s內(nèi)關(guān)機(jī),在60s內(nèi)輸入"我是豬"取消關(guān)機(jī)
//使用命令行關(guān)機(jī)
//shutdown -s -t 60
//取消關(guān)機(jī)
//shutdown -a
#include#include//system庫(kù)函數(shù)的頭文件
#include//strcmp庫(kù)函數(shù)的頭文件
int main() {
char arr[20] = { 0 };
system("shutdown -s -t 60");
again:
printf("請(qǐng)注意,您的電腦將在1分鐘內(nèi)關(guān)機(jī),如果輸入:我是豬,就取消關(guān)機(jī)\n");
scanf("%s", arr);
if (strcmp(arr, "我是豬") == 0) {//strcmp用來(lái)比較比較兩個(gè)字符串是否相等,等于的話返回值為0
system("shutdown -a");
}
else {
goto again; //輸錯(cuò)了但是時(shí)間還沒(méi)到,就返回again就再給一次機(jī)會(huì)
}
return 0;
}
運(yùn)行結(jié)果:


不用goto語(yǔ)句的寫(xiě)法:
int main() {
char arr[20] = { 0 };
system("shutdown -s -t 60");
while (1) { //在1分鐘內(nèi)輸入錯(cuò)誤后反復(fù)輸入,直到電腦關(guān)機(jī)
printf("請(qǐng)注意,您的電腦將在1分鐘內(nèi)關(guān)機(jī),如果輸入:我是豬,就取消關(guān)機(jī)\n");
scanf("%s", arr);
if (strcmp(arr, "我是豬") == 0) {//strcmp用來(lái)比較比較兩個(gè)字符串是否相等,等于的話返回值為0
system("shutdown -a");
break;
}
}
return 0;
}

4.shutdown命令的拓展
shutdown-a //取消關(guān)機(jī)
shutdown-s //關(guān)機(jī)
shutdown-f //強(qiáng)行關(guān)閉應(yīng)用程序
shutdown-m\\計(jì)算機(jī)名 //控制遠(yuǎn)程計(jì)算機(jī)
shutdown-i //顯示'遠(yuǎn)程關(guān)機(jī)'圖形用戶界面,但必須是shutdown的第一個(gè)參數(shù)
shutdown-I //注銷(xiāo)當(dāng)前用戶
shutdown-r //關(guān)機(jī)并重啟
shutdown-s-t //時(shí)間 設(shè)置關(guān)機(jī)倒計(jì)時(shí)
shutdown-r-t //時(shí)間 設(shè)置重新啟動(dòng)倒計(jì)時(shí)
shutdown-h //休眠
總結(jié):
以上是對(duì)goto語(yǔ)句的簡(jiǎn)單使用,但是也足以體現(xiàn)出goto語(yǔ)句的作用了.你學(xué)到了嗎小伙伴們😜😜
如果對(duì)你有幫助的話,希望小伙伴們點(diǎn)個(gè)贊和關(guān)注一下哦~💗💗💗我也會(huì)繼續(xù)更新學(xué)習(xí)的內(nèi)容,感謝友友們的支持!😚
你是否還在尋找穩(wěn)定的海外服務(wù)器提供商?創(chuàng)新互聯(lián)www.cdcxhl.cn海外機(jī)房具備T級(jí)流量清洗系統(tǒng)配攻擊溯源,準(zhǔn)確流量調(diào)度確保服務(wù)器高可用性,企業(yè)級(jí)服務(wù)器適合批量采購(gòu),新人活動(dòng)首月15元起,快前往官網(wǎng)查看詳情吧
文章標(biāo)題:分支和循環(huán)語(yǔ)句(2)補(bǔ)充goto語(yǔ)句-創(chuàng)新互聯(lián)
當(dāng)前路徑:http://fisionsoft.com.cn/article/dppghd.html