ホームページ >よくある問題 >C言語の演算子の優先順位規則とは何ですか?

C言語の演算子の優先順位規則とは何ですか?

清浅
清浅オリジナル
2019-03-19 13:16:2462834ブラウズ

C 言語演算子の優先順位は次のとおりです: ブラケット メンバーが 1 位、すべての単一項目が 2 位、乗算と除算の剰余が 3 つ、加算と減算が 4 つ、シフト 5、関係が 6 つ、等号 (および) 不等号の順位 7 つ、ビットごとの AND、 XOR とビット単位の OR、「世界の 3 分の 3」は 80 または 90、論理 OR と AND、12 と 11、条件は代入よりも高く、カンマ演算レベルは最低です。

C言語の演算子の優先順位規則とは何ですか?

#合計 15 の優先順位があります:

#説明1[]配列の添字()##-否定演算子-expression右から左へ単項演算子(型)強制型変換(データ型)式インクリメント演算子-- ## *値演算子*ポインタ変数単項演算子#&! ~ sizeof例外式/式*% ##4## ####左から右へ####左シフト変数<<式左から右へ #二項演算子##>>6##未満式<式二項演算子 <=以下式< ;=式二項演算子##7#!=##8#ビット単位 XOR 式^式左から右へ二項演算子|ビットごとの ORexpression|expression #|左から右へ 二項演算子##&&12?:条件演算子式 1 ? 式 2: 式 3右から左へ三項演算子 =代入演算子#変数-=式##<<=左シフト後に値を代入変数<<=式#>>=&=^=##ビットごとの OR 後の代入,
優先度

演算子

名前または意味

使用される形式

結合された方向

##配列名 [定数式]

##左から右へ

括弧

## (式)/関数名(パラメータ リスト)

.
メンバー選択(オブジェクト)

オブジェクト.メンバー名

##->

メンバー選択 (ポインタ)

オブジェクト ポインタ -> メンバー名

# 2

# 変数名/変数名

#単一演算子

デクリメント演算子
#--変数名/変数名--

単項演算子

アドレス演算子を取得

& 変数名

単項演算子

論理否定演算記号

#!式

単項演算子

ビット単位の否定演算子

~Expression

単項演算子

長さ演算子

sizeof(式)

##3

/

##左から右へ

二項演算子

乗算

式*式

二項演算子

剰余 ( modulo)

整数式/整数式

二項演算記号

プラス

式式

#二項演算子

-

マイナス

式-式

二項演算子

5

<<

右にシフト

変数>>式

二項演算子

>

# は

式>式

## より大きいです#######左から右へ###

二項演算子

>=

以上

expression>=expression

バイナリ演算子

# #<

==

等しい

#expression==expression

左から右へ

二項演算子

# は

#expression!= 式

二項演算子

## と等しくありません

&

## ビット単位および

式&式

#左から右

#二項演算子

#9

10

11

#ロジックと

##式&&式

左から右へ

二項演算子

||

##論理式または

式||式

左から右へ

二項演算子

##13

14

変数 = 式

右から左へ

/=

除算後の代入

変数/=式

#*=

乗算して値を割り当てる

変数*=式

%=

モジュラスを取得した後に値を割り当てます

変数% =Expression

=

加算後の代入

変数 = 式

-=

減算後の代入

右シフト後の値の割り当て

変数>>=式

##ビットごとの AND

Variable&=Expression 後の代入

ビットごとの XOR 後の代入

変数^=式

#|=

##変数|=式

##15

#カンマ演算子

式、式、...

左から右

左から右へ順番に操作

##手順:

同じ優先度を持つ演算子の場合、演算の順序は組み合わせの方向によって決まります。

機能:

##ブラケット メンバー No. 1; //ブラケット演算子 []() メンバー演算子 ->
  • すべての単項演算子 Second; //すべての単項演算子 (--、( 正)、-( negative), pointer arithmetic*, &
  • 乗算と除算、剰余 3、加算と減算 4; //この「剰余」は剰余演算、つまり %## を指します。
  • #シフト 5、リレーションシップ 6; //シフト演算子: << >>、リレーションシップ: > < >= <= など

  • Equal (and) は 7 番目と等しくない; //つまり == and!=

  • ビット単位の AND、XOR、およびビット単位の OR; //これらこれはビットごとの演算です: ビットごとの AND (&) XOR (^) ビットごとの OR (|)

  • "三三天下" 八九十;
  • 論理OR および AND ; ;

    条件は代入よりも高く、 //三項演算子の優先順位は 13 位であり、代入演算子と ","
  • カンマよりも高いだけです操作レベルは最低です! //カンマ演算子の優先順位は最低です

  • #

以上がC言語の演算子の優先順位規則とは何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。