トップ 差分 一覧 Farm ソース 検索 ヘルプ PDF RSS ログイン

Diary/2008-7-2

C言語の演算順序

はまってしまった.以下メモ.
優先度 演算子 機能 評価順序
1 ( ) かっこ --->
[] 配列要素
-> 構造体へのポインタ
. 構造体メンバ
2 ! 論理否定 <---
~ 1の補数 (ビットごと反転する)
++ インクリメント(一単位増加)
-- デクリメント(一単位減少)
+ プラス符号(ANSIで追加された)
- マイナス符号
(type) キャスト(強制型変換)
* ポインタ(間接指定)
& アドレス
sizeof 演算数のバイト数
3 * 乗算 --->
/ 除算
% 剰余(余り/モジュロ)
4 + 加算 --->
- 減算
5 << 左シフト --->
>> 右シフト
6 < より小さい --->
<= より小さいか等しい
> より大きい
>= より大きいか等しい
7 == 等しい --->
!= 等しくない
8 & ビット論理積 --->
9 ^ ビット排他的論理和 --->
10 | ビット論理和 --->
11 && 論理積 --->
12 || 論理和 --->
13 ? : 条件式 <---
14 = *= /= %= += -= = = ^= &= |= 代入演算子 <---
15 コンマ --->