• 締切済み

プログラミングの問題をおしえてください。

以下のprintf文の実行による表示を教えてください。お願いします。 int si=288; si >> 4: printf("%3d\n",si): print("%d\n",~si);

みんなの回答

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

この質問が, その「ごく一部の特殊なCPU」を対象にしていないという保証もないよね>#2. 環境を特定していない以上 ISO C の範囲内で考えざるを得ない. で, ISO C の範囲内でいえば「わからん」となる. もちろん「print ってどんな関数なのか」という突っ込みを先にすべきかもしれんが.

  • TT414
  • ベストアンサー率18% (72/384)
回答No.2

printf文などというものは無いので、表示されるものはありません。 >printf("%3d\n",si): >print("%d\n",~si); の出力は 288 -289 です。 hitomuraさん >処理系による。 とありますがどこが変わるのでしょうか。整数の~の値はごく一部の特殊なCPU以外は2の補数で処理されます。

  • hitomura
  • ベストアンサー率48% (325/664)
回答No.1

処理系による。 いや、マジでそうとしか答えられないんですよ。 というわけで、OSとコンパイラ、それからなぜそのOSとコンパイラで試してみずに質問してきたのか補足をお願いします。

関連するQ&A

専門家に質問してみよう