char は signed char じゃない

知らなかった
2
nagachika @nagachika

日記書いた。 「ruby-trunk-changes r45391 - r45397 - PB memo」 http://t.co/3qA8IH5PnB

2014-03-24 22:40:58

ruby-trunk-changes r45391 - r45397 より抜粋

''' naruse: r45391 2014-03-24 13:18:28 +0900

r45383 あたりの rb_bug() での C level backtrace 表示の修正でさらに DWARF の line_Base のエントリを char として解釈してしまっていたので signed char として読むように明示的に符号つきを指定しています。 あれ、char って指定ない時に unsigned char になるんでしたっけ? [ruby-dev:48068] [Bug #9654]'''

usa @unak

@nagachika C言語ではchar型の符号の有無は処理系定義です。

2014-03-24 22:43:44
nagachika @nagachika

@unak そうでしたかー。むかーしどこかで読んでた気もしますがもうすっかり忘れてました。

2014-03-24 22:44:56
usa @unak

@nagachika C言語では、charはsigned charかunsigned charかどちらかの省略形(どちらになるかは処理系が定義)。C++では恐ろしいことにcharとsigned charとunsigned charはそれぞれ異なる型で云々

2014-03-24 22:47:07
usa @unak

「C FAQ」と「~のCリファレンスマニュアル」は押さえておきたい感じである。もはや衒学的興味を満たす以上の意味はない気もするが。

2014-03-24 22:49:28