当前位置: 首页 > news >正文

【和春笋一起学C++】if else语句

if else语句格式如下: 

if(test-condition)
   statement1;
else
   statement2;

如果测试条件为true或非零,程序执行statement1,跳过statements,如果测试条件为false或0,则程序将跳过statement1,执行statement2。

注:C++不会自动将if和else之间的所有代码视为一个代码块,必须使用花括号将这些语句组成一个语句块。

因if else本身是一条语句,所以一个if else语句可以嵌套在另一个if else语句中,如:

    if (ch == 'A')
	{
		a_grade++;
	}
	else
	{
		if (ch == 'B')
		{
			b_grade++;
		}
		else
		{
			soso++;
		}
	}

因C++是自由格式语言,C++允许将这些元素排列成便于阅读的格式:

    if (ch == 'A')
	{
		a_grade++;
	}
	else if (ch == 'B')
	{
		b_grade++;
	}
	else
	{
		soso++;
	}

看上去像一个新的控制结构:if     else if    else,但实际上它只是一个if else被包含在另一个if else中。修订后的格式更为清晰,使程序员通过浏览代码便能确定不同的选择,整个构造仍被视为一条语句。

条件操作符和错误防范

将表达式variable==value反转为value==variable,可以捕获将相等操作符误写为赋值操作符的错误。如:将条件输入为:

if(3 == myNumber)

是有效的,但如果将它错误的输入为:

if(3 = myNumber)

则编译器将生成错误消息。但如果此时将变量写在前面,如下:

if(myNumber = 3)

则编译能通过,不会报错,导致这种错误在排查时很难发现。

http://www.dtcms.com/a/24726.html

相关文章:

  • Linux运维篇-存储基础知识
  • Maven的依赖管理
  • 【Java】泛型与集合篇(一)
  • 《Python实战进阶》专栏 No2: Flask 中间件与请求钩子的应用
  • Pytorch论文实现之结合对抗、均方、感知三种损失以及对称卷积神经网络来实现超分辨率重建
  • BS5852英国家具防火安全条款主要包括哪几个方面呢?
  • deepseek-v3在阿里云和腾讯云的使用中的差异
  • hystrix超详细教学
  • Python常见面试题的详解11
  • AI 量化炒股:噱头还是未来?从技术发展与投资实践深度分析
  • 最长回文子串(蓝桥云课)
  • T5 大模型
  • 进制和编码
  • 前端(AJAX)学习笔记(CLASS 2):图书管理案例以及图片上传
  • vcf2phylip v2.8-生信工具46
  • c++基础知识(六)
  • langchain应用-RAG
  • 【Unity Shader编程】之图元装配与光栅化
  • springcloud的组件及作用
  • 2012年下半年软件设计师上午题知识点及其详细解释(附真题及答案解析)
  • 【linux】更换ollama的deepseek模型默认安装路径
  • Vue 3 生命周期和生命周期函数
  • sql server查询IO消耗大的排查sql诊断语句
  • 机器学习入门实战 4 - 基本模型
  • 【SQL】SQL多表查询
  • FastAdmin后端列表导入表格数据
  • 瑞芯微RV1126部署YOLOv8全流程:环境搭建、pt-onnx-rknn模型转换、C++推理代码、错误解决、优化、交叉编译第三方库
  • 确保设备始终处于最佳运行状态,延长设备的使用寿命,保障系统的稳定运行的智慧地产开源了
  • HTTP2.0 和 HTTP1.1 的区别
  • 【分布式理论13】分布式存储:数据存储难题与解决之道