
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ランキング
-
Cpadで文字化け
-
フォームを開くときに、コンボ...
-
テキストボックスの値を変数に...
-
C言語 exitの使い方
-
VBAでダブルコーテーション入り...
-
デジタルカレンダーでTo Do 事...
-
変数名の間接指定
-
VB6.0-整数と余りを求める
-
変数にオフセットが付いている...
-
フリーランタイマーの時間差分...
-
ラジオボタンの値の取得につい...
-
2つの列で重複するキーの数と...
-
COLUMN(1:1)の意味を教え...
-
VBA コンボボックスの値をスピ...
-
3bitアップダウンカウンタ(Up/...
-
Excel-vba 文字列と変数を...
-
basp21のアップロード
-
C言語 exitで終了した関数の戻...
-
Variant型で宣言してるのにEmpt...
-
in_addrからchar型の文字列の変換
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VisualStudio2022でC言語プログ...
-
Accessで文字列のバイト数読み込み
-
VBA シート上にドロップダウン...
-
C言語で全角文字を扱いたいので...
-
アンダーバーとバックスラッシュ
-
rubyの正規表現について
-
UTF8が16進文字列に化ける(...
-
Ruby1.9で文字列の置換がうまく...
-
open-uriを用いた、ウェブ上か...
-
VBでまた行き詰まってしまいました
-
エクセルで数字の変換
-
Cpadで文字化け
-
void lcd_str(unsigned char* p...
-
ファイル名について
-
スプレッドシートの関数
-
ruby 正規表現の日本語とアルフ...
-
文字列の引き渡し
-
英数半角文字と「-」を指定する...
-
プロキシを使うプログラムでエ...
-
<python>算数の問題を作るプ...
おすすめ情報