C言語の文法入門(2)
今回は演算子・条件分岐・ループについてまとめる 算術演算子 基本的な算術演算子は他の言語と変わらない 足し算 x + y 引き算 x - y 掛け算 x * y 割り算 x / y ※答えが少数か整数かは変数の型次第 あまり x % y 論理演算子 && 論理積(AND) || 論理和(OR) ! 否定(NOT) これも他の言語と変わらないですね 比較演算子 小なり a < b 小なりイコール a <= b 大なり a > b 大なりイコール a >= b イコール a == b ノットイコール a != b ...
今回は演算子・条件分岐・ループについてまとめる
算術演算子
基本的な算術演算子は他の言語と変わらない
足し算 x + y 引き算 x - y 掛け算 x * y 割り算 x / y ※答えが少数か整数かは変数の型次第 あまり x % y
論理演算子
&& 論理積(AND) || 論理和(OR) ! 否定(NOT) これも他の言語と変わらないですね
比較演算子
小なり a < b 小なりイコール a <= b 大なり a > b 大なりイコール a >= b イコール a == b ノットイコール a != b
これも特に変化なし
ビット演算子
もちろんビット演算子もある
左シフト a << b 右シフト a >> b ビット否定 ~a ビット積 a & b ビット和 a | b ビット排他的論理和 a ^ b
その他の演算子
三項演算子 a ? b : c
C言語でも三項演算子は使えます
インクリメント
++x x++
デクリメント
--x x--
C言語のインクリメント、デクリメントは前置・後置の二種類があり、違いが出るのは以下の場合だ。
x = 2; y = ++x; xをインクリメントしてからyに代入 ==> x == 3, y == 3 x = 2; y = x++; yに代入してからxをインクリメント ==> x == 3, y == 2
if文
C言語でのif文は
if(条件式){ 処理; }else{ 処理; }
というように書く 処理が一つだけの場合{}を省略することもできるが、そもそも{}が無いRubyを触っていたので、極力省略しないことにする。
#省略した場合 if(条件式) 処理; else 処理;
switch文
C言語でのswitch文は
switch(条件式){ case 数値1: 処理; break; case 数値2: 処理; break; default: 処理; break; }
というように書く。 ちなみに扱えるのは整数のみで、小数や文字はコンパイル時にエラーが出る。
For文
C言語でのfor文は
for(初期化;条件式;反復文) { 処理; }
というように書く。 for文でも処理が一つだけの場合{}を省略できる
while文
C言語のwhile文は二種類ある 一つは他の言語と同じように
while(条件式;) { 処理; }
という書き方。
もう一つはdo ~ while文と言われ、 do{処理}while(条件)という書き方になる。
do{ 処理; }while(条件式);
do ~ while文では条件式が後ろに書かれているため、do内部の処理が終わってから条件の判定が行われる。 その為、一回目は条件がfalseでも処理が行われる。
break, continue
break文は現在のループを中断してループから抜け出す時に使う。 抜け出せるループは一つのみのため、多重ループを一度に抜け出すことはできない。 continue文はwhile文内部の処理を一度飛ばして、次のループに移る時に使う。
今回はこれまで 次回は関数についてまとめる。