基本演算子と型変換
算術・比較・論理演算子に加え、暗黙的および明示的な型変換を習得します。
「基本演算子と型変換」はCoddyKit上の無料C++ Academyレッスンです。 これはレッスン4/4です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはC++ Academy学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 C++ Academyコースには全4レッスンが含まれています。
算術演算子
標準的な算術演算子は+ - * /と、剰余演算子%です。剰余演算子は整数に対してのみ使用できます。
int a = 17, b = 5;
std::cout << a + b << "\n"; // 22
std::cout << a - b << "\n"; // 12
std::cout << a * b << "\n"; // 85
std::cout << a / b << "\n"; // 3 (integer division)
std::cout << a % b << "\n"; // 2整数除算と浮動小数点除算
両方のオペランドが整数の場合、除算結果はゼロ方向に切り捨てられます。一方のオペランドを浮動小数点型にキャストすると、実数除算になります。
int a = 7, b = 2;
std::cout << a / b << "\n"; // 3
std::cout << static_cast<double>(a) / b; // 3.5インクリメントとデクリメント
++と--は、値を1増加または減少させます。前置形式(++x)は先に増加させ、その値を返します。後置形式(x++)は元の値を返してから増加させます。
複合代入
算術演算と代入を組み合わせられます:+=、-=、*=、/=、%=。これらは短く、多くの場合より明快です。
int total = 0;
total += 5; // total = total + 5
total *= 2; // total = total * 2比較演算子
6つの比較演算子はboolを返します:==、!=、<、<=、>、>=。
論理演算子
&&(AND)、||(OR)、!(NOT)を使って、論理値を組み合わせます。これらは短絡評価を行うため、結果が早い段階で決まると、残りは評価されません。
bool valid = (age >= 18) && (age < 120);
bool weekend = (day == "Sat") || (day == "Sun");ビット演算子
ビット操作には、&(AND)、|(OR)、^(XOR)、~(NOT)、<<(左シフト)、>>(右シフト)を使用します。
暗黙的な変換
C++は多くの場面で数値型の間を自動的に変換しますが、精度が暗黙的に失われることがあります。異なる型を混在させた式には注意してください。
int i = 10;
double d = i; // OK: int to double
int j = 3.7; // OK but truncates to 3static_cast:明示的な変換
関連する型の間で変換する場合に推奨される方法です。コンパイル時にチェックされます。
double price = 9.99;
int dollars = static_cast<int>(price); // 9その他のキャスト:reinterpret_castとconst_cast
特殊な用途のために、他にも3種類のキャストがあります。
- reinterpret_cast— ビットパターンを別の型として解釈する(使用はまれにしてください)
- const_cast— constを取り除く(さらにまれな場合にのみ使用してください)
- dynamic_cast— 多相型向けの実行時キャスト
C形式のキャストを避ける
古い(int)x構文は曖昧です。4種類のキャストのどれを意味する場合もあります。意図に合った名前付きキャストを使用してください。
確認問題
両方のオペランドがintの場合、C++で7 / 2を評価すると何になりますか。
まとめ
C++には、算術、比較、論理、ビット演算の各演算子があります。暗黙的な変換ではデータが失われる可能性があるため、明示的な変換にはstatic_castを優先し、C形式のキャストは避けてください。
よくある質問
「基本演算子と型変換」レッスンは無料ですか?
はい。「基本演算子と型変換」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、C++ Academyコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 C++ Academyコースには全4レッスンが含まれています。
「基本演算子と型変換」で何を学びますか?
算術・比較・論理演算子に加え、暗黙的および明示的な型変換を習得します。 ブラウザで直接実行するハンズオンコードでC++ Academyを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。
C++ Academyを始めるのに経験は必要ですか?
事前経験は必要ありません。CoddyKitのC++ Academyは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン4/4です。
「基本演算子と型変換」レッスンにはどのくらい時間がかかりますか?
ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。
このC++ Academyレッスンでコードを書いて実行できますか?
はい。すべてのC++ Academyレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。