C言語なら俺に聞け(入門篇) Part 12
■ このスレッドは過去ログ倉庫に格納されています
0169デフォルトの名無しさん
2007/05/10(木) 22:05:35が LinuxとSolarisで動作が違うのでgcc -Eで確認したらSolatisではisalpha(c)が
((__ctype+1)[c] & (0x01 | 0x02)) に展開されててLinuxではライブラリ関数呼んでました。
動作が違ったのは*sが負数になってたせいのようでした。(なぜ負のインデックスで__ctype配列
参照してcore吐かなかったか不思議ですが...)*sに入る整数値がなんでもありと
すると、ここは普通どう書きますか?
if (isascii(*s) && isalpha(*s)){...}
とかすればOK?
■ このスレッドは過去ログ倉庫に格納されています