D-programming-assignment-operators

提供:Dev Guides
移動先:案内検索

Dプログラミング-代入演算子

次の代入演算子はD言語でサポートされています-

Operator Description Example
= It is simple assignment operator. It assigns values from right side operands to left side operand C = A + B assigns value of A + B into C
+= It is add AND assignment operator. It adds right operand to the left operand and assign the result to left operand C += A is equivalent to C = C + A
-= It is subtract AND assignment operator. It subtracts right operand from the left operand and assign the result to left operand. C -= A is equivalent to C = C - A
*= It is multiply AND assignment operator. It multiplies right operand with the left operand and assigns the result to left operand. C *= A is equivalent to C = C *A
/= It is divide AND assignment operator. It divides left operand with the right operand and assign the result to left operand. C/= A is equivalent to C = C/A
%= It is modulus AND assignment operator. It takes modulus using two operands and assign the result to left operand. C %= A is equivalent to C = C % A
<⇐ It is Left shift AND assignment operator. C <⇐ 2 is same as C = C << 2
>>= It is Right shift AND assignment operator. C >>= 2 is same as C = C >> 2
&= It is bitwise AND assignment operator. C &= 2 is same as C = C & 2
^= It is bitwise exclusive OR and assignment operator. C ^= 2 is same as C = C ^ 2
= It is bitwise inclusive OR and assignment operator
C = 2 is same as C = C 2

Dプログラミング言語で利用可能なすべての割り当て演算子を理解するために、次の例を試してください-

import std.stdio;

int main(string[] args) {
   int a = 21;
   int c ;

   c =  a;
   writefln("Line 1 - =  Operator Example, Value of c = %d\n", c );

   c +=  a;
   writefln("Line 2 - += Operator Example, Value of c = %d\n", c );

   c -=  a;
   writefln("Line 3 - -= Operator Example, Value of c = %d\n", c );

   c* =  a;
   writefln("Line 4 - *= Operator Example, Value of c = %d\n", c );

   c/=  a;
   writefln("Line 5 -/= Operator Example, Value of c = %d\n", c );

   c  = 200;
   c = c % a;
   writefln("Line 6 - %s= Operator Example, Value of c = %d\n",'\x25', c );

   c <<=  2;
   writefln("Line 7 - <<= Operator Example, Value of c = %d\n", c );

   c >>=  2;
   writefln("Line 8 - >>= Operator Example, Value of c = %d\n", c );

   c &=  2;
   writefln("Line 9 - &= Operator Example, Value of c = %d\n", c );

   c ^=  2;
   writefln("Line 10 - ^= Operator Example, Value of c = %d\n", c );

   c |=  2;
   writefln("Line 11 - |= Operator Example, Value of c = %d\n", c );

   return 0;
}

上記のプログラムをコンパイルして実行すると、次の結果が生成されます-

Line 1 - =  Operator Example, Value of c = 21

Line 2 - += Operator Example, Value of c = 42

Line 3 - -= Operator Example, Value of c = 21

Line 4 - *= Operator Example, Value of c = 441

Line 5 -/= Operator Example, Value of c = 21

Line 6 - %= Operator Example, Value of c = 11

Line 7 - <<= Operator Example, Value of c = 44

Line 8 - >>= Operator Example, Value of c = 11

Line 9 - &= Operator Example, Value of c = 2

Line 10 - ^= Operator Example, Value of c = 0

Line 11 - |= Operator Example, Value of c = 2