传媒公司的业务范围,百度关键词快速优化,大连智能模板建站,求职招聘网站开发代码29-1 goto语句介绍
C语言中提供了可以随意滥用的goto语句和标记跳转的标号。 从理论上goto语句是没有必要的#xff0c;实践中没有goto语句也可以很容易的写出代码。 但是某些场合下goto语句还是用得着的#xff0c;最常见的用法就是终止程序在某些深度嵌套的结构的处理过程…29-1 goto语句介绍
C语言中提供了可以随意滥用的goto语句和标记跳转的标号。 从理论上goto语句是没有必要的实践中没有goto语句也可以很容易的写出代码。 但是某些场合下goto语句还是用得着的最常见的用法就是终止程序在某些深度嵌套的结构的处理过程。
29-2 演示
建议尽量少使用
int main()
{
again:printf(hehe\n);printf(haha\n);goto again;return 0;
}
运行结果 注只能在同一个函数内部进行跳转 29-3 使用场景
例一次跳出两层或多层循环。 多层循环这种情况使用break是达不到目的的。它只能从最内层循环退出到上一层的循环。
for(...)for (...){for (...){if (diaster)goto error;}}
error:if (diaster)//处理错误情况
29-4 关机程序 执行系统命令要使用库函数system
shoutdown -s关机
shoutdown -t设置关机时间
shoutdown -a取消关机
代码如下
int main()
{char input[20] { 0 };system(shutdown -s -t 60);
again:printf(你的电脑即将在60秒后关机如果输入“esc”则会取消关机\n);scanf(%s, input);if (strcmp(input, esc) 0){system(shutdown -a);}elsegoto again;return 0;
}
运行结果 也可以用循环代替
int main()
{char input[20] { 0 };system(shutdown -s -t 60);while (1){printf(你的电脑即将在60秒后关机如果输入“esc”则会取消关机\n);scanf(%s, input);if (strcmp(input, esc) 0){system(shutdown -a);break;}}return 0;
}