プログラミング言語と文字コード
プログラミング言語により文字コードの取り扱いが異なるため、それについて収集・整理する。
C/C++
内部文字コードは実装依存
単位は char が1バイト単位(マルチバイト型。EUC, Shift_JIS, UTF-8 などで使われる。)
単位は wchar_t が1ワード単位(UTF-16 の場合は UTF-16 での1ワード)
先頭は0
Java
内部文字コードは UTF-16 (昔は UCS-2)
単位は UTF-16 での1ワード
先頭は0
JavaScript
内部文字コードは UTF-16 (昔は UCS-2)
単位は UTF-16 での1ワード
先頭は0
PHP
内部文字コードは設定依存 (mb_internal_encoding で指定)
mb* 系以外の関数はバイト単位
mb* 系の関数は文字単位
先頭は0
VBA
内部文字コードは UTF-16 (昔は UCS-2)
単位は UTF-16 での1ワード
先頭は1