C言語は、1972年にAT&Tベル研究所の、デニス・リッチーが主体となって作成したプログラミング言語です。 B言語の後継言語として開発されたことからC言語と命名。そのため、表記法などはB言語やALGOLに近いとされています。 Cの拡張版であるC++言語とともに、現在世界中でもっとも普及されているプログラミング言語です。
Terminalは、Apple社のmacOSに標準で付属しているUNIX端末エミュレータ。UNIXコマンドによってMacの操作および設定を行うことができます。
Linuxは、Unixをベースにして開発されたオペレーティングシステムです。日本では「リナックス」と呼ばれています。 主にWebサーバやDNSサーバ、イントラネットなどのサーバ用OSとして利用されています。 上位500のスーパーコンピュータの90%以上はLinuxを使用しています。 携帯端末用のプラットフォームAndroidは、Linuxカーネル上に構築されています。
Ubuntuは、Debian GNU/Linuxを基盤としたフリーのオペレーティングシステムです。
Q&A
解決済
2回答
843閲覧
総合スコア6
0グッド
0クリップ
投稿2021/09/28 08:05
0
Ubuntuのterminal画面です。 a=0x2B, b=0x31 で16進数として数字を入力し、a|bという処理をした後、それをprintfで10進数、8進数、16進数で出力したいのですが、どうやってこの出力になったのか理解できません。 10進法ではa=19, b=49 になると考えていますが、a|bの処理は何をしているのでしょうか?初学者なので、そもそもコマンドラインでの操作が間違っていたらそちらもご指導お願いいたします。
気になる質問をクリップする
クリップした質問は、後からいつでもMYページで確認できます。
またクリップした質問に回答があった際、通知やメールを受け取ることができます。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
質問へのコメント
回答2件
ベストアンサー
|はビットOR演算子です。動作についてはビット演算子なりを参照ください。 文字としての|はバーティカルバーといいますが、Cプログラミングでは「ビットOR演算子」といったほうが通じます。
|
投稿2021/09/28 08:13
総合スコア38341
回答へのコメント
2021/09/28 08:41
| はビット単位のORです 0x2b と0x31のorをとれば、0x3b となります
投稿2021/09/28 08:08
総合スコア88051
2021/09/28 08:42
2021/09/28 08:43
あなたの回答
tips
太字
斜体
打ち消し線
見出し
引用テキストの挿入
コードの挿入
リンクの挿入
リストの挿入
番号リストの挿入
表の挿入
水平線の挿入
プレビュー
15分調べてもわからないことはteratailで質問しよう!
ただいまの回答率85.35%
質問をまとめることで思考を整理して素早く解決
テンプレート機能で簡単に質問をまとめる
進数変換と | の読み解き方
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/09/28 08:41