くだすれC言語(初心者用) Part.2
■ このスレッドは過去ログ倉庫に格納されています
0720デフォルトの名無しさん
2007/05/31(木) 22:26:59intだからこそ問題となることがある。
isdigitに渡す引数がchar型だったとして、その値が負なら符号拡張された値が渡されてしまう。
is系関数が受け取れる引数の値の範囲は0からUCHAR_MAXまでとEOFのみ。
よって、負の値を渡したらまず間違いなく未定義の動作になってしまう。
ASCIIの文字だけしか入っていないなど、char型の値が負でないと確実に言えるのであれば、
unsigned charへキャストしてやる必要はない。
■ このスレッドは過去ログ倉庫に格納されています