精华内容
下载资源
问答
  • c语言复合赋值运算符
    千次阅读
    2021-05-21 04:44:34

    C语言复合赋值运算符

    在C语言的赋值中有一种特殊的赋值运算符,就是复合赋值运算符。下面是关于C语言复合赋值运算符的'相关介绍!

    复合赋值运算符就是在赋值符“=”之前加上其它二目运算符可构成。比如大家可能最常看到这样的语句:

    n += 5;

    这个语句相当于:

    n = n + 5;

    C语言中有如下的复合赋值运算符:

    n += a; 相当于n = n + a;

    n -= a; 相当于n = n - a;

    n *= a; 相当于n = n * a;

    n /= a; 相当于n = n / a;

    n %= a; 相当于n = n % a;

    n <<= a; 相当于n = n << a;

    n >>= a; 相当于n = n >> a;

    n &= a; 相当于n = n & a;

    n ^= a; 相当于n = n ^ a;

    n |= a; 相当于n = n | a;

    注意:如果右边不只是一个变量而是一个表达式,则需要看成一个整体.

    比如:

    n /= a * b + c >> d 相当于 n = n / (a * b +c >> d),右边作为一个整体加括号。

    即使是有同样优先级的也需要,请看下面的情况:

    int n = 3;

    int m = 13;

    n *= 12 / m;

    如果不加括号而是直接写成另外一种:n = n * 12 / m,显然这个计算结果大于0,而上面的为0。

    复合运算要注意以下:

    复合运算符左边必须是变量;

    复合运算符右边的表达式计算完成后才参与复合赋值运算。复合运算符常用于某个变量自身的变化,尤其当左边的变量名很长时,使用复合运算符书写更方便。

    复合赋值运算的优先级符合C语言运算符的优先级表,结合方向为从右到左。

    更多相关内容
  • 复合赋值运算符优先级 Compound-assignment operators provide a shorter syntax for assigning the result of an arithmetic or bitwise operator. They perform the operation on the two operands before ...

    c语言复合赋值运算符

    Compound-assignment operators provide a shorter syntax for assigning the result of an arithmetic or bitwise operator. They perform the operation on the two operands before assigning the result to the first operand.

    复合分配运算符为分配算术运算符或按位运算符的结果提供了较短的语法。 在将结果分配给第一个操作数之前,它们先对两个操作数执行运算。

    Java中的复合赋值运算符 ( Compound-Assignment Operators in Java )

    Java supports 11 compound-assignment operators:

    Java支持11种复合赋值运算符:

    
    +=   assigns the result of the addition.
    -=   assigns the result of the subtraction.
    *=   assigns the result of the multiplication
    /=   assigns the result of the division.
    %=   assigns the remainder of the division.
    &=   assigns the result of the logical AND.
    |=   assigns the result of the logical OR.
    ^=   assigns the result of the logical XOR.
    <<=  assigns the result of the signed left bit shift.
    >>=  assigns the result of the signed right bit shift.
    >>>= assigns the result of the unsigned right bit shift.

    用法示例 ( Example Usage )

    To assign the result of an addition operation to a variable using the standard syntax:

    使用标准语法将加法运算的结果分配给变量:

    
    //add 2 to the value of number
    number = number + 2;

    But use a compound-assignment operator to effect the same outcome with the simpler syntax:

    但是,使用复合赋值运算符以更简单的语法实现相同的结果:

    
    //add 2 to the value of number
    number += 2;

    翻译自: https://www.thoughtco.com/compound-assignment-operator-2034054

    c语言复合赋值运算符

    展开全文
  • C语言复合赋值运算符

    千次阅读 2022-02-20 17:01:46
    1、复合赋值运算符(compound assignment operator)是由赋值运算符“=”与其他运算符结合而成的。先决条件是“=”右方的源操作数必须有一个和左方接收赋值数值的操作数相同。 语法格式如下: a op= b; 含义:...

    1、复合赋值运算符(compound assignment operator)是由赋值运算符“=”与其他运算符结合而成的。先决条件是“=”右方的源操作数必须有一个和左方接收赋值数值的操作数相同。

    语法格式如下:

    a op= b;

    含义:将a的值与b的值以op运算符进行计算,然后将结果赋值给a。

    例如:

    int a=30;

    a+=3;/*a=a+3*/

    结果a=33。

    案例程序如下:

    #include<stdio.h>
    #include<stdlib.h>
    int main()
    {
    	int a;
    	
        a=30;
        printf("a= %d \n",a);
        printf("-------------------\n");
    	a+=3;/*a=a+3*/
    	printf("a= %d \n",a);	
        system("pause");  
        return 0;
     }
    

    运行结果如下:

    复合赋值运算符有以下10种:

    1. +=          加法赋值运算
    2. -=           减法赋值运算
    3. *=           乘法赋值运算
    4. /=           除法赋值运算
    5. %=         求余赋值运算符
    6. &=          AND位赋值运算符
    7. |=           OR位赋值运算
    8. ^=          NOT位赋值运算
    9. <<=        位左移赋值运算
    10. >>=        位右移赋值运算

    本专栏还有运算符的相关总结分享,持续更新中,未完待续……

    展开全文
  • C语言中还提供了特殊的复合赋值运算符的应用。


    前言

    除了基本的算术运算符之外,C语言中还提供了特殊的复合赋值运算符,复合赋值运算就是把“运算”和“赋值”两个动作结合起来。


    一、什么是复合赋值运算符

    赋值符“=”之前加上其他二目运算符可构成复合赋值符,经常使用的复合运算符主要有算术复合运算符和位复合运算符。复合赋值运算符和普通赋值运算符的优先级都是相同的,且都具有右结合性,运算过程相当于变量的值累加上右边表达式的值,存放到该变量中,例如x*=y+3等价于x=x*(y+3)。

    二、程序实例

    代码如下:

    #include <stdio.h>
    void main()
    {
    	int a=10,b,c;
    	a+=a-=a*=a;
    	printf("a=%d\n",a);
    	a=10,b=3;
    	printf("exp=%d\n",a-b+++1);
    	a=b=c=2;
    	a*=b=c;
    	printf("a=%d,b=%d,c=%d\n",a,b,c);
    	b*=c+=a/=c+2;
    	printf("a=%d,b=%d,c=%d\n",a,b,c);
    }
    

    运行结果:
    复合赋值运算符的应用

    结果分析:

    • 对于代码中的语句a+=a-=a*=a;来说,根据赋值运算符的结合性,表达式的实际运算过程是:a=a*a、a=a-a、a=a+a,因此最后计算结果为0.
    • 对于语句a*=b=c;来说运算过程为:b=c、a=a*b。
    • 语句b*=c+=a/=c+2,的计算过程为:a=a/(c+2)、c=c+a、b=b*c。

    拓展应用:
    应用复合的赋值运算符时经常会出错,在写表达式的过程中,最好利用圆括号把表达式的主要功能括起来,不要让编译器来分析表达式中具体的操作数的值,例如表达式a+b+=c+=3是不合法的表达,应该加上(),正确的表达式是a+(b+=c+=3)。


    总结

    以上就是今天要讲的内容,本文仅仅简单介绍了C语言中复合赋值运算符的应用。

    展开全文
  • C语言 赋值运算符

    千次阅读 2021-12-15 14:59:46
    文章目录介绍案例演示赋值运算符特点 介绍 赋值运算符就是将某个运算后的值,赋给指定的变量。 赋值运算符一览表 先讲 =、+=、-=、*= 、/=、%= <<=、>>=、&=、^=、|= 和位运算相关, 案例演示 赋值...
  • 赋值操作是程序设计中最常用的操作之一,C 语言共提供了 11 个赋值运算符,均为二元运算符,其中仅有一个为基本赋值运算符 =,其余 10 个均是复合赋值运算符,即: (1)简单赋值运算符" = " 用法:变量标识符 = ...
  • 简单赋值在C语言里,运算符=并不表示相等,而是一个赋值运算符。这意味着,符号=的左边该是一个可修改的变量名,而右边是赋给该变量的值。如下程序语句:i = i+1;在数学上,该等式无法成立。而作为C语言的赋值语句,...
  • 复合赋值运算符“+=、-=、*=、/=、%=”详解

    万次阅读 多人点赞 2021-03-13 16:11:53
    下表列出了“+=、-=、*=、/=、%=”复合赋值运算符的描述及例子。 复合赋值运算符“+=”,表示的意思是先将运算符左边操作数指向的变量值和右边的操作数执行相加操作,然后再将相加的结果赋值给左边的操作数指向的...
  • C语言赋值运算符和赋值表达式

    千次阅读 多人点赞 2021-08-04 16:09:48
    C语言赋值运算符和赋值表达式赋值运算符类型转换复合赋值运算符 赋值运算符 简单赋值运算符和表达式:简单赋值运算符记为“=”。由“= ”连接的式子称为赋值表达式。其一般形式为: 变量=表达式 例如: x=a+b w=...
  • C语言·赋值运算符

    2020-03-21 15:29:17
    运算符等级:14 结合性:右结合性 注意:赋值时左右数据类型要一致,否则系统会默认进行类型转换,因而造成意想不到的错误。 (1)实型数据赋给整型变量时,舍去小数。 (2)整型数据赋予实型变量时,数值不变。但以浮点...
  • 复合赋值运算符,除了书写简单、使代码更加简洁的优势之外,还有一个很重要的优点。 能自动在代码底层完成数据类型的转换 也是因为这个优点,建议尽量使用复合赋值运算符。 实例 @Test public void run() { //...
  • C语言赋值运算符与赋值表达式

    千次阅读 2021-05-18 12:00:35
    C语言赋值运算符与赋值表达式我们都知道基本的赋值运算符是"=",他的优先级别低于其他的运算符,所以对该运算符往往最后读取。下面和大家分享一下C语言赋值运算符与赋值表达式,一起来看看吧!一、赋值运算符与赋值...
  • 复合赋值运算符“+=,-=,*=,/=,%=,,>>=,&=,|=,^=” 一般形式: <变量><双目运算符>=<表达式> 等价于:<变量>=<变量><双目运算符><表达式> 复合赋值中,赋值号右侧的表达式是一个整体。 6-2 赋值运算符与赋值...
  • C语言运算符、赋值运算符复合赋值运算符、自增自减运算符、逗号运算符、条件运算符、goto语句、注释
  • 自增自减运算符 ...复合赋值运算符 复合运算符具体有如下几种:+=、-=、*=、/=、%=、&=、|=、^=、<<=、>>=。 其含义为 exp1 op= exp2 等价于 exp1=exp1 op exp2 例如: a+=3 等价
  • 简单赋值在C语言里,运算符=并不表示相等,而是一个赋值运算符。这意味着,符号=的左边该是一个可修改的变量名,而右边是赋给该变量的值。如下程序语句:i=i+1;在数学上,该等式无法成立。而作为C语言的赋值语句,它...
  • 二,复合赋值 例子 a +=5;//(注意+=之间不要有空格) //等价于 a = a + 5; a +=(a+100)/2; //等价于 a = a + (a+100)/2; //先将右面的式子算完再进行结合 a *= a + 12; //等价于 a = a*(a+12); a /= 9+12; //等价...
  • C语言赋值运算符

    千次阅读 多人点赞 2015-08-06 14:05:51
    赋值运算符是C语言的运算符之一。赋值运算符用于为变量指定值,在C语言中,包括两类赋值运算符,一类是简单赋值运算符,将值直接赋给变量,另一类是复合赋值运算符,变量参与运算同时用运算结果更新变量的值。
  • Day08-复合赋值运算符

    2022-03-27 10:26:55
    C语言 #include<stdio.h> int main(){ int i=7,j=7; i+=1; j=j+1; printf("i=%d j=%d\n",i,j);//i=8 j=8 i-=1; j=j-1; printf("i=%d j=%d\n",i,j);//i=7 j=7 i*=2; j=j*2; printf("i=%d j=%d\n...
  • 算术运算符高! 表达式优先级()(小括号) [](数组下标) .(结构成员) ->(指针型结构成员)↑最高!(逻辑非) .(位取反) -(负号) ++(加1) --(减1) &(变量地址) │*(指针所指内容) type(函数说明) sizeof(长度计算) ...
  • c语言34种运算符.doc

    2021-05-23 05:04:58
    C语言运算符算术运算符TAG:运算符,数据类型TEXT:算术运算符对数值进行算术运算,其中:加、减、乘、除、求余运算是双目运算。其结果可以是整数、单精度实数和双精度实数。自增、自减运算是单目运算,其操作对象只能...
  • C语言中的运算符(超全超详细)

    千次阅读 2022-04-12 14:36:39
    五、赋值运算符 六、三目运算符(特殊运算符) 七、逗号运算符 八、sizeof运算符 九、运算符优先级 一、算数运算符 基本的五种 1. + 可以是: 常量+常量 , 变量+常量 2. - 3. * 4. / 5 / 2 ...
  • 算术运算符及赋值运算符 1 )算术运算符  例: 5 + 3 10-6 3*4 8/2 10%3 这样的用算术运算符结合起来的式子,我们就称之为算术表达式。 2 )...
  • C语言中的运算符和表达式

    千次阅读 2021-05-19 16:36:47
    此外,还有复合赋值运算符,后续陆续介绍。2、赋值表达式“=”的左侧是变量,右侧是常量、变量、表达式、函数等,“=”的含义是将右边的值赋给左侧的变量,程序运行时先计算右侧值,然后赋给左侧变量。二、算术...
  • C语言中的运算符大全(内附优先级表)

    万次阅读 多人点赞 2021-04-16 12:41:58
    由一个或多个操作数(变量,常量,字面值)及运算符组成的复合C语言规则的式子叫做表达式 表达式经由计算得到的结果称为表达式的值 C语言中可以分为左值和右值: 左值:可以写的内存块(变量)。 右值:可以读的内存块...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 14,792
精华内容 5,916
关键字:

c语言复合赋值运算符