【初心者歓迎】C/C++室 Ver.44【環境依存OK】
■ このスレッドは過去ログ倉庫に格納されています
0046デフォルトの名無しさん
2007/11/03(土) 20:18:27んーむ。 根拠は見つけられなかった。
正しくは
for (int i = CHAR_MIN; i <= CHAR_MAX; i++) {
cout << (isprint((unsigned char)i) ? (char)i : ' ');
}
と書くべきかもしれんね。
規格上は signed char の範囲外の値を signed char に変換したときの動作は実装依存らしいけど、実際にはそれが問題になったことはないな。
signed char と unsigned char は 1 対 1 で対応してるもんだと考えてる。
>>45
それはたぶんロケールのせい。
setlocale(LC_ALL, ""); を試してみそ。
ムダかもしれんが。
■ このスレッドは過去ログ倉庫に格納されています