• ベストアンサー

参考書3冊調べましたが!? 説明がありません!?

 型    大きさ     記憶出来る範囲  char   1バイト   1文字-128~127  何で文字は”数字”ではないの・記憶できる範囲で!-128から始まっているのですか!!?? 文字のマイナス - の範囲はどんな概念なのでしょうか!?  宜しくお願いします。

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

  • ベストアンサー
  • lv4u
  • ベストアンサー率27% (1862/6715)
回答No.1

>>何で文字は”数字”ではないの・記憶できる範囲で!-128から始まっているのですか!!?? そのような説明もありですが、数字として、0~255という解説でもOKです。また、その0~255を数字とみなすか、文字とみなすか?は、プログラムを設計した人が決めることです。 コンピュータからすれば、文字も数字も同じビットの並びです。 >>文字のマイナス - の範囲はどんな概念なのでしょうか!? 文字として扱う場合、基本的にプログラマさんは、文字データですから、マイナスという考えは持ちません。 ただ、C言語の場合は、読み込んでいるファイルの最後を意味する値として、特別なケースとして(-1)を扱うことはあります。

Campus2
質問者

お礼

 ご回答真にありがとうございました。 A:数字として、0~255という解説でもOKです。  >>文字のマイナス - の範囲はどんな概念なのでしょうか!? A:文字として扱う場合、基本的にプログラマさんは、文字データですから、マイナスという考えは持ちません。   ・・・特別なケースとして(-1)を扱うことはあります。   以上納得です。  

その他の回答 (6)

  • usa3usa
  • ベストアンサー率33% (20/59)
回答No.7

型    大きさ     記憶出来る範囲 char   1バイト   1文字-128~127 の意味するところは以下の通りです。 ーーーーーーーー char型は、記憶領域1バイト(8ビット)の大きさで記憶され、256通りの値を記憶できます。 256通りの値をどのように使うかは利用者(プログラマ)次第ですが、 アルファベットであれば大文字小文字をあわせても256通り以内なので記号を含めて1文字の記憶に使えます。また数値を記憶させるとした場合、0から255までの256通りとして記憶する場合や、-128から127までの256通りとして記憶すると場合が一般的です。

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

質問の内容以前に書き方はもっと考えようよ.... 例えば「参考書3冊調べましたが!?」の「!?」にはどのような意味があるんですか? あるいは「記憶できる範囲で!」の「!」にはいかなる意図が込められているのですか? あと, 厳密に言えば char で「記憶できる範囲」は -128~127 とは限らない (処理系による) ので注意.

Campus2
質問者

補足

御回答になっていないような・・

  • Wr5
  • ベストアンサー率53% (2173/4061)
回答No.5

>何で文字は”数字”ではないの・記憶できる範囲で!-128から始まっているのですか!!?? 「数字」と「数値」は区別しないとヘンにハマるかもしれないのでご注意を。 char型の変数に入れられる文字はASCIIで1文字分。 # 日本語の漢字1文字ではないのでご注意を。 で、その際に数値として入れられるのは符号付きだと負数の128から正数の127までの値。 符号なしだと正数の0から255までの値(符号がないので負数は入れられない)となります。 >文字のマイナス 文字ではなく符号の表現でしかないです。

Campus2
質問者

お礼

ご回答真にありがとうございました。    以下なんとなく理解できそうです。 A:「数字」と「数値」は区別しないとヘンにハマるかもしれないのでご注意を。  文字ではなく符号の表現でしかないです。   まだ・まだ・コンピュータの仕組みがいまいちなので・すこしづつ・理解を深めたいと思います^^

  • tsunji
  • ベストアンサー率20% (196/958)
回答No.4

ここでいう文字は1バイト文字=ASCIIコード(半角文字)のことを指します。 http://www12.plala.or.jp/mz80k2/electronics/ascii/ascii.html 1バイトは8ビットですから表現できる数字は符号なし(unsigned char型)なら0~255までですが、 符号付き(char型)にすると-128~127となるのです。

  • wormhole
  • ベストアンサー率28% (1626/5665)
回答No.3

charは文字ではないです。 intやlongと同じく整数型です。 文字を表すのに都合がいいのでcharを使っているだけです。

  • bardfish
  • ベストアンサー率28% (5029/17766)
回答No.2

それって・・・どんな本に書いてあったんですか? リファレンスマニュアルを見たほうがいいですよ。 取り敢えずANSI規格準拠の書籍は買っておいたほうがいいです。 たとえば、こういうの↓ http://www.amazon.co.jp/%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0%E8%A8%80%E8%AA%9EC-%E7%AC%AC2%E7%89%88-ANSI%E8%A6%8F%E6%A0%BC%E6%BA%96%E6%8B%A0-B-W-%E3%82%AB%E3%83%BC%E3%83%8B%E3%83%8F%E3%83%B3/dp/4320026926 「記憶できる範囲」でマイナスが使われているのは符号ビット付きの場合。符号ビットでない考え方なら0~255です。 http://ja.wikipedia.org/wiki/%E7%AC%A6%E5%8F%B7%E4%BB%98%E6%95%B0%E5%80%A4%E8%A1%A8%E7%8F%BE