c语言后置 运算符,98-递增运算符的前置和后置形式
前面将++运算符放在变量前面,这叫做前置形式。
这个运算符也可以写在变量的后面,这称为后置形式。
在表达式,注意是在表达式中使用前置和后置形式的效果不大相同。
下面的用法#include
int main(void)
{
int count = 0;
int total = count++ + 3;
printf("%d",total);
return 0;
}
等同于#include
int main(void)
{
int count = 0;
int total = count + 3;//如果++是后置 则 在这里就先进行+运算 然后再计算count++
count++;
printf("%d",total);
return 0;
}
如果表达式编写的是count++,则变量count的值在使用之后才递增。
比如
int count = 5;
int total = 6 + count++;
count初始值是5,这时候 由于++是写在count的后面,所以 就先使用了count的值进行加法运算,也就是 先让6+5 的结果是11 所以 total的值是11.然后 才将count的值+1 所以 最后
count的值变成了6 total的值变成了11
上面语句 等同于
total = 6 + count;
++count;#include
int main()
{
int count = 5;
int total = 6 + count++;
printf("count:%d\n",count);
printf("total:%d\n",total);
return 0;
}
#include
int main(void)
{
int count = 0;
int total = ++count + 3;//++在前 则先进行count++ 然后再进行count+3
printf("%d",total);
return 0;
}
最后结果就输出了4
最后 count的值 不管是前置还是后置 都会变为6;
再看另外一种特殊情况
a++ +b 和 a+ ++b
例如#include
int main()
{
int a = 10;
int b = 5;
int x = a++ + b; //++在后面 所以先让a的值 + b 结果付给x 后 然后 再让a的值+1
printf("%d",x);//15
return 0;
}
但是 如果写成这样#include
int main()
{
int a = 10;
int b = 5;
int x = a+(++b); //++在b的前面 所以先计算++b 让b的值变成6 然后再10+6
printf("%d",x);//16
return 0;
}
上面 为了避免混淆。最好 使用括号。#include
int main(void)
{
int count = 0;
int a = 3;
int total = count+++a;//(count++)+ a 或者 count + (++a)
printf("%d",total);
return 0;
}
c语言后置 运算符,98-递增运算符的前置和后置形式相关推荐
- 运算符重载——递增运算符重载
目录: 运算符重载--算术运算符重载 运算符重载--递增运算符重载 运算符重载--左移运算符重载 运算符重载--赋值运算符重载 应用场景: class MyInteger { public:MyInt ...
- cad怎么将图层后置_CAD中如何将图形前置和后置吗? - CAD自学网
如果图中都是线性图形且最终要单色打印,通常不用太理会图形的顺序.但如果实体填充且与其他图形有重叠,就需要设置图形的顺序了,有时我们在插入一些设备或构件时,为了图面更整洁,会在图块中添加区域覆盖WIPE ...
- cad怎么将图层后置_cad前置后置怎么用? cad将图形前置和后置的教程
如果图中都是线性图形且最终要单色打印,通常不用太理会图形的顺序.但如果实体填充且与其他图形有重叠,就需要设置图形的顺序了,有时我们在插入一些设备或构件时,为了图面更整洁,会在图块中添加区域覆盖WIPE ...
- cad怎么将图层后置_CAD中如何将图形前置和后置吗?
如果图中都是线性图形且最终要单色打印,通常不用太理会图形的顺序.但如果实体填充且与其他图形有重叠,就需要设置图形的顺序了,有时我们在插入一些设备或构件时,为了图面更整洁,会在图块中添加区域覆盖WIPE ...
- C++递增运算符重载
C++递增运算符重载 递增运算符重载 作用 案例 递增运算符重载 作用 通过重载递增运算符,实现自己的整型数据 案例 class MyInteger {friend ostream& oper ...
- 运算符重载——左移运算符重载
目录: 运算符重载--算术运算符重载 运算符重载--递增运算符重载 运算符重载--左移运算符重载 运算符重载--赋值运算符重载 应用场景: 可以输出自定义的数据类型信息 Person p(" ...
- 运算符重载——算术运算符重载
目录: 运算符重载--算术运算符重载 运算符重载--递增运算符重载 运算符重载--左移运算符重载 运算符重载--赋值运算符重载 应用场景: Person p1(100);// p1有100元 Pers ...
- C++_类和对象_C++运算符重载_递增运算符重载_重载++运算符_前置++_后置++重载---C++语言工作笔记057
然后我们再来看这个递增运算符的重载. 我们知道,递增运算符,有前置++,和后置++,可以看到,上面写了 然后我们这次就自己定义一个int的类型,MyInteger,然后实现,递增,递减的操作. 首先我 ...
- JavaScript运算符:递增递减运算符前置和后置的区别
从两段代码说起 var num1 = 2; var num2 = 20; var num3 = --num1 + num2; var num4 = num1 + num2; console.log(n ...
- 后置递增运算符(JS)
后置递增运算符(JS) <!DOCTYPE html> <html lang="en"><head><meta charset=" ...
最新文章
- Spring MVC 拦截器
- 【Android】Android 设置Activity窗体 不显示标题和全屏显示
- 用c语言编写5颗骰子任意投掷总数为15 的概率,概率统计习题1period;2答案
- 数据挖掘流程(三):特征工程
- Linux常用命令英文全称与中文解释Linux系统
- C++STL常用遍历算法
- linux哪个指令可以设定使用者的密码,linux期末考试练习题 2
- html漂亮的表格模板+背景_咨询amp;金融主题响应式网站着陆页模板
- C++的reinterpret_cast
- 插头DP题目泛做(为了对应WYD的课件)
- 二叉树遍历算法C++实现
- java根据距离算经纬度_java 根据两点经纬度来算距离
- 聊聊最近的几件小事儿
- 什么是黑链?什么是黑帽?什么是明链?
- 1380 D - Berserk And Fireball(思维,贪心)
- 《王者荣耀》手游产品分析报告:崛起的王者荣耀,胜负就是这么简单!
- Canvas 绘制圆形图片、绘制圆角矩形图片
- 吴恩达机器学习笔记(自用)
- 解决Win10 丢失蓝牙功能的问题
- 【C++】继承(C++重中之重)(学习与复习兼顾)
热门文章
- Java_cookie 和session 的区别详解
- 配置追踪者—Scylla v1(***测试工具)
- linux下配置PPTP协议×××
- 计算机辅助设计(湖南省首届“湘邮科技杯”大学生程序设计大赛试题)
- 3001.Linux维护和管理培训.实操考核A
- how to send blogs to wordpress through the windows live writer
- Vue项目npm run dev后 报错Cannot GET /
- Laravel的中间件
- 深度学习aps_深度学习的目标检测算法是如何解决尺度问题的?
- python+selenium 使用for循环,遍历 定位 获取 单个元素中想要的值