goto语句
一、简介
c语言中提供了可以随意使用的goto语句和标记跳转的语句。
从理论上goto语句是没有必要的,实践中没有goto语句也可以容易的写出code。
but某些场合下goto语句还是有用的,最常见的用法就是终止程序在某些深度嵌套的结构的处理过程,例如一次跳出两层或者多层循环。
这种情况使用break是不可行的,它只能从最内层退出到上一层的循环。
下面是使用goto语句的一个例子:
一个关机程序
#include <stdio.h>
#include <stdlib.h>
int main()
{
char input[20] = { 0 };
//shutdown -s -t 60
//system() - 执行系统命令的
system("shutdown -s -t 60");
again:
printf("请注意,你的电脑在1分钟内关机,如果输入:停止关机,就取消关机\n 请输入》:");
scanf("%s", input);
if (strcmp(input, "停止关机") == 0)//比较两个字符串-strcmp()
{
system("shutdown -a");
}
else
{
goto again;
}
return 0;
}