c++ 运算符 循环
运算符
- 算术运算符
- 关系运算符
- 逻辑运算符
- 位运算符
- 赋值运算符
- 杂项运算符
一、算术运算符

二、关系运算符

三、逻辑运算符

四、位运算符
位运算符作用于位,并逐位执行操作
假设如果 A = 60,且 B = 13,现在以二进制格式表示:
A = 0011 1100
B = 0000 1101
-----------------
A&B = 0000 1100
A|B = 0011 1101
A^B = 0011 0001
~A = 1100 0011

五、赋值运算符

六、杂项运算符
sizeof
返回变量或数据类型的字节大小 ———— Size of int : 4
Condition ? X : Y
如果 Condition 为真 ? 则值为 X : 否则值为 Y
, 逗号运算符
会顺序执行一系列运算。整个逗号表达式的值是以逗号分隔的列表中的最后一个表达式的值
.(点)和 ->(箭头)
用于引用类、结构和共用体的成员
Cast 强制转换
把一种数据类型转换为另一种数据类型。例如,int(2.2000) 将返回 2
&指针运算符
返回变量的地址
*指针运算符
指向一个变量
七、运算符优先级

补充:
1.除法/和求模%若两个操作数是正数,则结果都是正数
若两个操作数是负数,则除法的结果是正数,求模的结果是负数
若只有一个操作数是负数,求模的结果取决于机器,除法可以确定结果是负数
2. “--> x” 在 x 的进行自减运算前,会先使用比较符号 > 与右边表达式 0 进行比较,然后返回结果再进行自减运算
循环
// while 循环执行
while( a < )
{
cout << "a 的值:" << a << endl;
a++;
}
// for 循环执行
for( int a = ; a < ; a = a + )
{
cout << "a 的值:" << a << endl;
}
// 等效于while循环
for ( ;i<=; )
{
sum+=i;
i++;
}
// do 循环执行 ———— 不断循环,直到条件为 假
do
{
cout << "a 的值:" << a << endl;
a = a + ;
}while( a < );
一、基于范围的for循环(C++11)
int my_array[5] = {1, 2, 3, 4, 5};
// 每个数组元素乘于 2
for (int &x : my_array)
{
x *= ;
cout << x << endl;
}
// auto 类型也是 C++11 新标准中的,用来自动获取变量的类型
for (auto &x : my_array) {
x *= ;
cout << x << endl;
}
":"之后的第二区块,代表将被迭代的范围
string str("some string"); //也可以遍历字符串
// range for 语句
for(auto &c : str)
{
c = toupper(c);
}
二、无限循环
由于构成 for 循环的三个表达式中任何一个都不是必需的,您可以将某些条件表达式留空来构成一个无限循环
for( ; ; )
{
printf("This loop will run forever.\n");
}
三、循环控制语句
break;

continue;

goto语句
goto 语句允许把控制无条件转移到同一函数内的被标记的语句。
不建议使用
但对于跳出深层嵌套 有很好的作用
for(...) {
for(...) {
while(...) {
if(...) goto stop;
.
.
.
}
}
}
stop:
cout << "Error in program.\n";
判断
if( xxx )
{
...
}else if ( xxx ){
...
}else{
...
}
switch
char grade = 'D'; switch(grade)
{
case 'A' :
cout << "很棒!" << endl;
break;
case 'B' :
case 'C' :
cout << "做得好" << endl;
break;
case 'D' :
cout << "您通过了" << endl;
break;
case 'F' :
cout << "最好再试一下" << endl;
break;
default :
cout << "无效的成绩" << endl;
}
- switch 语句中的 表达式 必须是一个整型或枚举类型,或者是一个 class 类型,其中 class 有一个单一的转换函数将其转换为整型或枚举类型。
- 在一个 switch 中可以有任意数量的 case 语句。每个 case 后跟一个要比较的值和一个冒号。
- case 的 constant-expression 必须与 switch 中的变量具有相同的数据类型,且必须是一个常量或字面量。
- 当被测试的变量等于 case 中的常量时,case 后跟的语句将被执行,直到遇到 break 语句为止。
- 当遇到 break 语句时,switch 终止,控制流将跳转到 switch 语句后的下一行。
- 不是每一个 case 都需要包含 break。如果 case 语句不包含 break,控制流将会 继续 后续的 case,直到遇到 break 为止。
- 一个 switch 语句可以有一个可选的 default case,出现在 switch 的结尾。default case 可用于在上面所有 case 都不为真时执行一个任务。default case 中的 break 语句不是必需的。
c++ 运算符 循环的更多相关文章
- Python web前端 06 运算符 循环
Python web前端 06 运算符 循环 一.运算符 #JS六大数据类型 #number 数字 #string 字符串 #boolean 布尔型 #function 函数 #undefined 未 ...
- java新手笔记3 运算符&循环
1.包 2.运算符 public class Operator { public static void main(String[] args) { int a = 5; System.out.pri ...
- Python学习笔记----数据类型 运算符 循环 条件判断
1. Python安装 在官网www.python.org下载安装程序,可以支持的操作系统linux,windows,mac. Python版本:2.x和3.x,分别有x86和x64. 在Window ...
- Java 学习(5):修饰符 运算符
目录 --- 修饰符 --- 运算符 --- 循环结构 --- 分支结构 修饰符: 修饰符用来定义类.方法或者变量,通常放在语句的最前端.如下: public class className { // ...
- Java中的循环结构(二)
循环结构(二) 学习本章有道的单词: rate:速度,比率 young:年轻的,年少 schedule:时间表,调度 neggtive:消极的;否定 customer:顾客,观众 birthday:生 ...
- [转] 从 C 到 Objective C 入门1
转自: http://blog.liuhongwei.cn/iphone/objective-c/ 进军iPhone开发,最大的难点之一就是怪异的Objective C语法了.不过,了解之后才发现,原 ...
- objective-c基础教程——学习小结
objective-c基础教程——学习小结 提纲: 简介 与C语言相比要注意的地方 objective-c高级特性 开发工具介绍(cocoa 工具包的功能,框架,源文件组织:XCode使用介绍) ...
- Perl 语法 - 基础
perl语言的核心是正则表达式,在文本处理上非常有优势,与python类似,但语法不同,perl的语法很灵活,用多了才会觉得好用. 常用知识点总结: perl语法类似于C语言(perl源于Unix), ...
- C Primer Plus(第五版)6
第 6 章 C 控制语句 : 循环 在本章中你将学习下列内容 已经多次学过,没怎么标注 · 关键字: for while do while · 运算符: < > >= <= ! ...
随机推荐
- JS转为number的四种方法
// 1.Number() var num1 = Number(true); console.log(num1); var num2 = Number(" ") console.l ...
- selenium-Xpath使用方法
01:什么是Xpath Xpath是一门xml文档中查找信息的语言,Xpath可用来在xml文档中对元素和属性进行遍历,主流的浏览器都支持xpath,因为HTML页面在DOM中表示xhtml文档 xp ...
- Mongodb索引和执行计划 hint 慢查询
查询索引 索引存放在system.indexes集合中 > show tables address data person system.indexes 默认会为所有的ID建上索引 而且无法删除 ...
- Java-20180419
1.leetcode第二题 给定两个链表,逆序转换为数值相加,在逆序输出新链表. Input: (2 -> 4 -> 3) + (5 -> 6 -> 4)Output: 7 - ...
- CH5104 I-country[线性DP+分类讨论]
http://contest-hunter.org:83/contest/0x50%E3%80%8C%E5%8A%A8%E6%80%81%E8%A7%84%E5%88%92%E3%80%8D%E4%B ...
- Kendo UI for jQuery使用教程——创建自定义捆绑包
[Kendo UI for jQuery最新试用版下载] Kendo UI目前最新提供Kendo UI for jQuery.Kendo UI for Angular.Kendo UI Support ...
- 创建Windows任务计划定时调用网页执行任务(通过Windows PowerShell的Invoke-WebRequest实现)
前言:项目中使用RoadFlow工作流,设置超时自动提交功能,自动提交功能已有现成的网页可实现(http://127.0.0.1/WorkFlowRun/AutoSubmit),现需创建Windows ...
- 第十一章 前端开发-html
第十一章 前端开发-html 1.1.0 html:超文本标记语言 html特征:(HyperText Markup Language) 对换行的空格不敏感 空白折叠 标签:有称为标记 双闭合标签 & ...
- node的安装和配置教程
node,除了做数据服务处理,还是各大框架的环境依赖,作为前端开发人员,node是必不可少的.好了,接下来直接开始. 一.根据自己的安装环境(即你的电脑系统版本)下载对应安装包,官网地址:https: ...
- BeanUtils对象属性copy的性能对比以及源码分析
1. 对象属性拷贝的常见方式及其性能 在日常编码中,经常会遇到DO.DTO对象之间的转换,如果对象本身的属性比较少的时候,那么我们采用硬编码手工setter也还ok,但如果对象的属性比较多的情况下,手 ...