C 日本語文字列 新しいページはコチラ

提供: yonewiki
移動: 案内, 検索
(日本語文字列)
(マルチバイト文字列、ワイド文字列)
36行: 36行:
 
== '''マルチバイト文字列、ワイド文字列''' ==
 
== '''マルチバイト文字列、ワイド文字列''' ==
 
*マルチバイト文字列<br />
 
*マルチバイト文字列<br />
マルチバイト文字列はchar型でやってきたこと。<br />
+
マルチバイト文字列はchar型でやってきたこと。それに加えて、マルチバイト処理用の文字列操作関数で取り扱うということです。strlen関数に相当するのは _mbslen です。ワイド文字ならwcslenです。<br />
 +
 
 
*ワイド文字列<br />
 
*ワイド文字列<br />
 
固定の2byte以上のメモリ空間に英数字ascii範囲とか関係なくすべて同じ固定の領域に格納する方法。デメリットとしては、文字列でメモリ空間をかなり無駄にしてしまうということ。<br />
 
固定の2byte以上のメモリ空間に英数字ascii範囲とか関係なくすべて同じ固定の領域に格納する方法。デメリットとしては、文字列でメモリ空間をかなり無駄にしてしまうということ。<br />
65行: 66行:
 
_wsetlocale( LC_ALL, L("Japanese") );<br />
 
_wsetlocale( LC_ALL, L("Japanese") );<br />
 
とします。こちらはwchar.hをインクルードするだけで使えるとのこと。<br />
 
とします。こちらはwchar.hをインクルードするだけで使えるとのこと。<br />
wcslenは文字列の文字数をカウントする関数です。マルチバイト文字列版はstrlen関数になります。<br />
+
wcslenは文字列の文字数をカウントする関数です。通常のマルチバイト文字でもワイド文字でもない、何もしない関数はstrlen関数になります。<br />
 
<br />
 
<br />
 
<br />
 
<br />

2013年11月22日 (金) 00:00時点における版



個人用ツール
名前空間

変種
操作
案内
ツールボックス