原标题:为什么在C语言中,goto这么不受待见?

什么是goto语句

goto语句被称为C语言中的跳转语句。用于无条件跳转到其他标签。它将控制权转移到程序的其他部分。

goto语句一般很少使用,因为它使程序的可读性和复杂性变得更差。

语法

goto label;

goto语句示例

让我们来看一个简单的例子,演示如何使用C语言中的goto语句。

打开Visual Studio创建一个名称为:goto的工程,并在这个工程中创建一个源文件:goto-statment.c,其代码如下所示 -

#include void main {int age;

gotolabel:printf("You are not eligible to vote!");

printf("Enter you age:");scanf("%d", &age);if (age < 18) {goto gotolabel;}else {printf("You are eligible to vote!");}

}

执行上面代码,得到以下结果

You are not eligible to vote!Enter you age:12You are not eligible to vote!Enter you age:18You are eligible to vote!

为什么它这么不受待见?

二十几年前,当计算机编程尚处于起步阶段时,程序流程是由“GOTO”语句来控制。该类语句允许程序员对当前代码行断行,而直接进入另一个不同的代码段。列表1为简单的示例。

goto在c语言中的作用,为什么在C语言中,goto这么不受待见?相关推荐

  1. goto在c语言中的作用,关键字goto在C语言中的使用

    1.goto关键字基础知识关键字goto从字面的意思就是"去哪里"的意思,专业一点的话表示无条件跳转的意思(有学过汇编的小伙伴应该会觉得非常像jump指令),在C语言中的使用格式是 ...

  2. %f在c语言中是什么意思,在C语言中,%d,%c,%f都是什么意思,请详细的说一下,谢谢了...

    满意答案 huluzhubao 推荐于 2017.11.26 采纳率:40%    等级:12 已帮助:5759人 printf函数调用的一般形式 printf函数是一个标准库函数,它的函数原型在头文 ...

  3. c语言中怎么定义一个指针,C语言中,定义一个指针的时候为这个指针开辟...

    2016-08-03 10:00齐景宪 客户经理 区别:C语言把内存划分成四个区,它把一般的变量和数组等存在于内存中的栈区,所以数组在C语言的定义中只是一组同类型的普通变量,即使这个变量有可能是指针. ...

  4. c语言while函数作用,详解C语言中的while语句

    什么是C语言的while语句?它的作用是什么呢?估计很多初学者对此都是一知半解.下面课课家笔者就为大家详细解释C语言中的while语句的含义和作用. 首先笔者先给大家介绍C语言中的共有的三大常用的程序 ...

  5. static在c语言中是什么意思,在C语言中static有什么含义

    2019-10-10阅读(64) 最主要有两点用途.让一个变量长期有效,而不管其是在什么地方被申明.比如:intfun1(){staticints_value=0;....}那么fun1不管在什么地方 ...

  6. c语言中什么是指针初始化,C语言中的“char指针初始化”是什么意思?

    满意答案 gqtywh 推荐于 2019.10.06 采纳率:53%    等级:8 已帮助:60人 char 指针,也就是char *类型. 其初始化本质上与其它变量初始化没有什么区别,就是赋予其一 ...

  7. c语言程序功能作用是什么,C语言中rewind函数的作用是什么?

    rewind函数的作用是:使文件位置指针重新返回文件的开始位置. C语言rewind函数 rewind函数是C语言程序中的库函数 功 能:将文件内部的位置指针重新指向一个流(数据流/文件)的开头 注意 ...

  8. java语言中 逻辑常量_在 Java语言中 ,逻辑常量只有哪两个值 (true,false)_语文答案_学小易找答案...

    [单选题]推进增长动能转换,以加快发展先进制造业为重点全面提升( ) [单选题]甲状腺素可( )神经元突触的活动. [判断题]神经元接受两个的独立的时间上接近的刺激后,突触后电位是呈现一个非线性的叠加 ...

  9. c语言中输入格式带括号,C语言中printf()后的括号里面的怎么写,表示什么?...

    int printf(const char *format,[argument]); format 参数输出的格式,定义格式为: %[flags][width][.perc] [F|N|h|l]typ ...

最新文章

  1. SQL时间相关 - SQL日期,时间比较
  2. 基于CASIA-GaitDatasetB步态图像轮廓数据库的步态周期检测与步态角度特征MATLAB源码
  3. jenkins 发送邮件插件Email Extension Template Plugin配置及script pipeline完整脚本
  4. HTML5语言格式,HTML5 自然语言格式的输入表单
  5. 双系统Ubuntu无法访问windows磁盘分区解决方法
  6. 汇编语言 -第十一章
  7. 要闻君说:谷歌云重磅发布两大技术平台;以后可以打飞滴了?SAP重组动荡;微软宣布 Azure Functions 支持 Java...
  8. Swift语言高速入门
  9. C++新特性探究(三):=default、=delete
  10. js基础知识温习:构造函数与原型
  11. [python]数字编程练习
  12. 产业区块链技术与服务提供商纸贵科技获得B+轮融资
  13. python 加速方法_24种方法加速你的Python
  14. Stm32是用C语言编程吗,stm32编程软件是什么 stm32用什么软件编程
  15. c 语言小游戏源程序,c/c++小游戏源代码
  16. 入门ASP.NET Core,你该怎么学?
  17. 组态王通过Modbus TCP与ESP32通讯
  18. ae批量修改字体_AE脚本-批量文字替换图层样式属性编辑脚本Aescripts pt_TextEdit 2.41 + 使用教程...
  19. 解析国内冷链物流的发展现状
  20. 德琪医药和上药控股达成合作;方达医药位于美国宾州新实验室投运;药明康德发布财报 | 医药健闻...

热门文章

  1. 基于阿里云GPU云服务器的AIACC助力UC搜索业务性能提效380%,每年节省数千万成本
  2. 使用aircrack和fluxion工具获取wifi密码的教程
  3. JS模拟自由落体弹跳动画
  4. 基于ssm作业管理系统
  5. 如何用photoshop软件更改照片像素大小并限制在指定大小下
  6. vscode权威指南 pdf_zotero+坚果云,免费跨平台文献管理最佳实践指南
  7. 鸿蒙os骁龙845,鸿蒙OS全新PC桌面模式即将上线?回顾一下手机桌面系统的发展历程...
  8. Python 16进制转ASCII(十六进制转ASCII)
  9. centos 7 虚拟机安装k8s
  10. 使用element-ui实现树形穿梭框