2021年12月19日
川俣晶の縁側ソフトウェアnew_C#入門・全キーワード明快解説!total 403 count

*= /= %= += -= <<= >>= &= ^= |= : 複合代入で文字数節約

Written By: 川俣 晶連絡先

この章のテーマ §

 複合代入について学びます。複合代入は、加算などの計算で同じ機能をもっと少ない文字数で記述できる機能です。

前提知識 §

Console.WriteLineメソッド, 文字列の基礎, 変数の基礎, int型, +などの演算子

解説 §

 複合代入は、代入と+やーなどの算術演算を一体になって行う機能です。

 たとえば、x = x + yという式があるとき、これはx += yと書き換えることができます。

 使用できる演算子には、+の他に、* / % - << >> & ^ |があります。

罠の数々 §

  • 書き換えた結果は100%同じはないことに注意。x + yのような式の型は最低でもint型の幅に拡大されてしまうからである
  • 割と利用例は多いので、知っておくとサンプルソースを読むときに役立つ

参考リンク §

代入演算子 (C# リファレンス)

サンプルソース: compoundAssignment §

int a = 1;

int b = 2;

a = a + b;

Console.WriteLine($"a={a}");

int c = 1;

int d = 2;

c += d;

Console.WriteLine($"c={c}");

実行結果 §

a=3

c=3

リポジトリ §

https://github.com/autumn009/CSharpPrimer2

練習問題 §

 以下のプログラムで、a += 1;とa = a + 1;は完全に同じだろうか。何が違うのだろうか。

byte a = 1;

a += 1;

a = a + 1;

Console.WriteLine(a);

  1. 両方とも同じで実行できるよ
  2. a += 1;はエラーだよ
  3. a = a + 1;はエラーだよ
  4. 両方ともエラーだよ

[[解答]]

Facebook

このコンテンツを書いた川俣 晶へメッセージを送る

[メッセージ送信フォームを利用する]

メッセージ送信フォームを利用することで、川俣 晶に対してメッセージを送ることができます。

この機能は、100%確実に川俣 晶へメッセージを伝達するものではなく、また、確実に川俣 晶よりの返事を得られるものではないことにご注意ください。

このコンテンツへトラックバックするためのURL

http://mag.autumn.org/tb.aspx/20211219084111
サイトの表紙【new_C#入門・全キーワード明快解説!】の表紙【new_C#入門・全キーワード明快解説!】のコンテンツ全リスト 【new_C#入門・全キーワード明快解説!】の入手全リスト 【new_C#入門・全キーワード明快解説!】のRSS1.0形式の情報このサイトの全キーワードリスト 印刷用ページ

管理者: 川俣 晶連絡先

Powered by MagSite2 Version 0.36 (Alpha-Test) Copyright (c) 2004-2021 Pie Dey.Co.,Ltd.