
No.2ベストアンサー
- 回答日時:
文字コード環境によって違います。
(1)Shift-JIS、EUC-JP
基本的にANSI規格の8bitコード体系の上に乗ってる16bitコードなので、処理上は2バイトで1文字として扱います。
char mojiretu[] = "テスト";
char moji[3];
int n = 2;
memcpy(moji, mojiretu + (n - 1) * 2, 2);
char moji[2] = 0;
printf("%d番目の文字は「%s」\n", moji);
// "2番目の文字は「ス」"と表示
(2)UTF-16の場合
UNICODEの16bitコードです。C言語ではwchar_t等のワイド文字として扱います。
wchar_t mojiretu[] = L"テスト";
wchar_t moji[2];
int n = 2;
moji[0] = mojiretu[n - 1];
moji[1] = L'\0';
wprintf(L"%d番目の文字は「%s」\n", moji);
// "2番目の文字は「ス」"と表示
(3)その他
コードによっては1文字のサイズが固定とは限りません(例:UTF-8)
それぞれにそれなりの処理が必要です。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Ruby1.9で文字列の置換がうまく...
-
VisualStudio2022でC言語プログ...
-
C言語で全角文字を扱いたいので...
-
アンダーバーとバックスラッシュ
-
VBでまた行き詰まってしまいました
-
スプレッドシートの関数
-
プロキシを使うプログラムでエ...
-
void lcd_str(unsigned char* p...
-
open-uriを用いた、ウェブ上か...
-
<python>算数の問題を作るプ...
-
HTML5では文中の半角不等号はち...
-
英数半角文字と「-」を指定する...
-
文字列の引き渡し
-
ruby 正規表現の日本語とアルフ...
-
VBA シート上にドロップダウン...
-
エクセルで数字の変換
-
rubyの正規表現について
-
Access2003 オートナンバーの現...
-
vbsでテキストファイル内の文字...
-
【VBA】複合代入演算子
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VisualStudio2022でC言語プログ...
-
Accessで文字列のバイト数読み込み
-
ファイル名について
-
tomcat7 web.xml のエンコード
-
C言語で全角文字を扱いたいので...
-
VC2008+Qtの文字化け
-
Kシェルでの桁数取得
-
VBA シート上にドロップダウン...
-
Cpadで文字化け
-
スプレッドシートの関数
-
VBでまた行き詰まってしまいました
-
Ruby 文字コード判別
-
open-uriを用いた、ウェブ上か...
-
アンダーバーとバックスラッシュ
-
C言語 exitの使い方
-
VBAでダブルコーテーション入り...
-
Excel-vba 文字列と変数を...
-
フォームを開くときに、コンボ...
-
エラーの意味は? Lvalue req...
-
jsp~jspにhiddenを使って変数...
おすすめ情報