• ベストアンサー

"|="はどのような意味ですか。

c言語で変数に値を入れるときに  x |= b という記述があるのですが、 これ( |= )にはどのような意味があるのでしょうか。 どなたかご存知の方教えていただければ幸いです。

  • koon1
  • お礼率69% (18/26)

質問者が選んだベストアンサー

  • ベストアンサー
回答No.1

x = x | b を縮約したものです。 このように演算子と代入演算子 = を縮約したものは 複合代入演算子と呼ばれます。

koon1
質問者

お礼

思い出しました! ネットで記号を検索できなかったので、言葉を教えていただき、 ありがとうございます。

その他の回答 (1)

  • Tacosan
  • ベストアンサー率23% (3656/15482)
回答No.2

+= の意味はわかりますか?

koon1
質問者

お礼

x+=aはx=x+aということですね。 わかりました。 ありがとうございます。

関連するQ&A

  • 「**」の意味がわからなくて困っております。

    C言語の記述表記でわからない部分があって困っています。 y=0.93815-1.1848*x+0.0253599*x**2; という数式なのですが、最後の「**」の表記が何を意味するのかわかりません。単独の「*」であれば掛け算を意味すると思うのですが。 「**」と並んでいるので二乗の意味を示すのでしょうか。 ある測定プログラムで、この部分だけC言語で書かれており、私はC言語などほぼ素人に近いので困っています。 どなたかお分かりになる方、ご指南して頂けないでしょうか。 どうか宜しくお願い致します。

  • 2.**32と.d0の意味

    BASICで作成された一様乱数を生成するプログラムをC言語で書き直す、 という課題が出たのですが、変数に初期値を与える部分で、 m=2.**32 r0=60757.d0 という記述があるのですが、これはそれぞれどういう意味なのでしょうか。

  • 「評価」とはどういう意味ですか?

    質問1:初心者にわかりやすいように説明してください。 言語仕様書みてもちんぷんかんぷんでした。。 質問2:評価とは、主に2つの意味があり、1つ目は「演算子がオペランドを演算する事」、2つ目は、式を構成する変数やリテラルについて「その値がいくつであるかを得ること」でしょうか? 例えば、論理演算について、int a=1,b=0,c=0のとき、a==1 && b==3 || a==1 && b==0の論理式があったとします。このとき、評価とは a==1がtrueがfalseかを評価する、→trueの値を得る。 こういった意味でしょうか? 質問3:「リテラルを評価する」というのはどういうことでしょうか?

    • ベストアンサー
    • Java
  • ヌル文字とは一体何でしょうか

    はじめまして。  私はC言語というか、プログラムの超初心者なのですが、参考書を読んでいる途中で「C言語では¥0を整数に変換すると、0という値になります」という記述があったのですが、これは一体どういう意味なのでしょか?どなたか分かりやすく教えていただければ非常に幸いです。

  • メモリセルと変数 ( a = b + cの意味)

    メモリセルと変数の関係について勉強しています。 動的(non-static)なローカル変数 bとcが宣言されたあと、 次の文が 出現したとします。 int a = b + c; 問題を解いてるのですが、問題によると、 この文章で 変数とメモリセルが結びつく 機会を二つ答えよ。 「変数aの値が aのメモリセルに保存される」というのが、一つだと考えるのですが、もう一つが思いつきません。 変数bは "int a = b + c;" の以前に、宣言されているので、bとbのメモリセルはこの文より前に結びついてます。 同様にcも この文より前にメモリセルと結びついています。 考えられるのは、b + c なのですが、 a = b + c の意味が 「b+c の計算結果の値を a のメモリセルに 保存する」 という 答えが二つになります。 a = b +c の意味はこれでいいのでしょうか? 文章がわかりにくくてすみません。 要はa = b + cの本質的意味が知りたいのです。

  • c言語で定義する変数のアドレス

    c言語の超初心者です。追いえてください。 c言語で2つの変数を定義しています。 char *a; char *b; この2つの変数に値をいれた際の動作で以下のようなことって発生しますか? a="1111" b="2222" aをprintfするとbにいれた値"2222"が表示される。

  • C言語の電卓におけるincludeについて

    C言語の電卓におけるincludeについて C言語の電卓におけるincludeについて質問です。 プログラミング言語C第2版 ANSI規格準拠 B.W.カーニハン・D.M.リッチー著 質問1. 4章にある電卓プログラムですが、getch.cがcalc.hをincludeしないのはなぜですか? 解説よろしくお願いします calc.h #difine NUMBER '0' main.c #include <stdio.h> #include <stdlib.h> #include "calc.h" #difine MAXOP 100 getop.c #include <stdio.h> #include <ctype.h> #include "calc.h" stack.c #include <stdio.h> #include "calc.h" #difine MAXVAL 100 getch.c #include <stdio.h> 質問2. 第4章までしか読んでいませんが、「関数で返さない値はゴミ(garbage)になる」と書いていました。 関数で返さない値は、関数から抜けると消えるものと思っていたので驚きました。 関数で返さない値の後処理はどうすればいいのですか? 質問3. 外部変数と静的変数の違いは? ―メモ― 局所変数 自動変数     main内の変数     int x;                          static int x; 永久的なメモリが与えられることを意味する 外部変数          main外の変数     static int x; 静的変数          関数内の変数     static int x; レジスタ変数        変数をレジスタに置く register int x; 以上、有識者の方、教えてくださいmm

  • C言語(またはC++言語)についての質問です。

    C言語(またはC++言語)において、以下の変数x、ポインタ変数(*p,**pp, ***ppp)のメモリ上のイメージを記述しなさい。 int x, *p, **pp, ***ppp; x=10; p=&x; pp=&p; pppp=&pp; という問題なのですが、わからなくて困っています。 このプログラムはどのようなものなのでしょうか。 詳しい回答をよろしくお願いします。

  • C言語でπを2万桁まで計算するには

    C言語でπの値を2万桁まで(2万という数字に特に意味はないですが大きい桁)をマーチンの公式を用いて計算したいのです。 マーチンの公式によるπの求め方は 16×アークタンジェント(1/5) - 4×アークタンジェント(1/239) ということは分かったのですが double型の変数を使っても扱える桁数はたかがしれているので どのようにすればアークタンジェント(1/5)などの値を C言語のプログラムで大きい桁まで求めることができるのでしょうか。 また何かうまい具合に計算できるアルゴリズムなどがありましたら 教えてください。 詳しい方いましたら、よろしくお願いします。 もしよければ参考プログラムなども 貼り付けていただけたら幸いです。

  • 定数と変数の違いがわかりません

    例えば、ax^2+bx+c=0 といった式で、解(xの値)を求めよ、と言う問題がありますね。この場合はa,b,cが定数、xが変数となりますが a,b,cが変わる問題もあるし、決まっていない時もあります。 なので、a,b,cは変数なんじゃないのか、って思うんですが・・。 定数と変数の違い教えてください><

専門家に質問してみよう