ホームページ  >  記事  >  バックエンド開発  >  C言語のカンマ演算子とは何かとその例

C言語のカンマ演算子とは何かとその例

hzc
hzcオリジナル
2020-07-02 11:40:057869ブラウズ

カンマ演算子とは、C言語において複数の式をカンマで区切ることができることを意味します。カンマで区切られた式の値は個別に確定しますが、式全体の値は最後の式の値になります。表現。 。

C言語のカンマ演算子とは何かとその例

カンマ演算子は、C 言語では複数の式をカンマで区切ることができ、カンマで区切られた式の値が解決されることを意味します。ただし、式全体の値は最後の式の値になります。

例:

int a1,a2,b=2,c=7,d=5; // 1行目

a1=( b,c--,d 3); // 2 行目

a2= b,c--,d 3; // 3 行目

a1 に値を割り当てるコードには、カンマで区切られた 3 つの式があるため、最終値は最後の式の値 (d 3) の値、つまり 8 になる必要があります。したがって、a1 の値は 8 になります。

a2 に値を代入するコードの式も 3 つあります。このときの 3 つの式は、a2= b, c--, d 3, (代入演算子が代入演算子よりも優先されるためです)カンマ演算子レベル) 最終的な式の値も 8 ですが、b=4 (コードの 2 行目が完了すると、b=3、つまりコードの 3 行目が実行されると、 b の値は 4 )、つまり a2=4 です。

注: カンマ演算の結合性は左から右であり、完了後の式全体の値は最後の式の値になります。

例: int a[2],x=2,y=5;

##a[0]=(x 3,y ,x ) ;最終結果は次のようになります:a[0]=2 x=3 y=6;

なぜ a[0]=2: (x) が後であるためです。演算 次に、

a[1]=(x,x 3,x 7);を追加すると、最終結果は次のようになります:a[1]=10,x=3

結合性の別の例:

int i=24;

int n = (i ,i ,i ,i ); // n == 27

カンマ演算子の結合性は左から右であるため、4 つの i は順番に実行されますが、最後の i は代入後に計算されます。 , したがって、最終的には 27 が返されます。

推奨チュートリアル: 「

c 言語チュートリアル

以上がC言語のカンマ演算子とは何かとその例の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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