网站意见反馈源码,衡水网站设计怎么做,网站建设 app开发 小程序,设计师之家数字图书馆C中的运算符总结#xff08;7#xff09;#xff1a;复合赋值运算符
复合赋值运算符将运算结果赋给左边的操作数。
请看下面的代码#xff1a;
int num1 22;
int num2 5;
num1 num2; // num1 contains 27 after the operation其中最后一行代码与下面的代码等效#…C中的运算符总结7复合赋值运算符
复合赋值运算符将运算结果赋给左边的操作数。
请看下面的代码
int num1 22;
int num2 5;
num1 num2; // num1 contains 27 after the operation其中最后一行代码与下面的代码等效
num1 num1 num2;因此运算符 的作用如下将两个操作数相加再将结果赋给左边的操作数 num1。
下表列出了众多复合赋值运算符并说明了其工作原理
运算符用法等效于加法赋值运算符num1 num2;num1 num1 num2;减法赋值运算符num1 - num2;num1 num1 - num2;乘法赋值运算符num1 * num2;num1 num1 * num2;除法赋值运算符num1 / num2;num1 num1 / num2;求模赋值运算符num1 % num2;num1 num1 % num2;按位左移赋值运算符num1 num2;num1 num1 num2;按位右移赋值运算符num1 num2;num1 num1 num2;按位 AND 赋值运算符num1 num2;num1 num1 num2;按位 OR 赋值运算符num1 | num2;num1 num1 | num2;按位 XOR 赋值运算符num1 ^ num2;num1 num1 ^ num2;
以下程序演示了这些运算符的效果
#include iostream
using namespace std;int main()
{cout Enter a number: ;int value 0;cin value;value 8;cout After 8, value value endl;value - 2;cout After - 2, value value endl;value / 4;cout After / 4, value value endl;value * 4;cout After * 4, value value endl;value % 1000;cout After % 1000, value value endl;// Note: henceforth assignment happens within cout cout After 1, value (value 1) endl;cout After 2, value (value 2) endl;cout After | 0x55, value (value | 0x55) endl;cout After ^ 0x55, value (value ^ 0x55) endl;cout After 0x0F, value (value 0x0F) endl;return 0;
}输出
Enter a number: 440
After 8, value 448
After - 2, value 446
After / 4, value 111
After * 4, value 444
After % 1000, value 444
After 1, value 888
After 2, value 222
After | 0x55, value 223
After ^ 0x55, value 138
After 0x0F, value 10分析
在整个程序中不断使用各种复合赋值运算符修改 value 的值。每次运算都使用了 value并将结果赋给 value。因此第 9 行将用户输入的值 440 加上 8并将结果 448赋给 value。接下来第 11 行将 448 减去 2并将结果 446赋给 value。
该文章会更新欢迎大家批评指正。
推荐一个零声学院的C服务器开发课程个人觉得老师讲得不错 分享给大家LinuxNginxZeroMQMySQLRedis fastdfsMongoDBZK流媒体CDNP2PK8SDocker TCP/IP协程DPDK等技术内容 点击立即学习C/C后台高级服务器课程