プロが教える店舗&オフィスのセキュリティ対策術

こんにちは。

C言語において、char型ポインタが指している文字が、2バイト文字の1バイト目かどうかを確認する事ができれば、文字列から2バイト文字を検出できると思うのですが、やり方が分かりません。
検索してみても、ややこしい事ばかり書かれていて、すっきりとした答えが見つかりませんでした。
何かいい方法を知っておられる方がいらっしゃれば、是非アドバイスを頂きたいと思います。
では、よろしくお願い致します。

A 回答 (3件)

文字コードが何か書かれていないのでShift_JISと仮定しますが


その「ややこしい事」を理解してください。
Shift_JISは無理矢理なコード体系なのでマルチバイト文字の
1バイト目や2バイト目を簡単に確認する手段はありません。
char型ポインタが指しているもので判定できるのは
「1バイト目かもしれない」「2バイト目かもしれない」くらいです。
    • good
    • 0
この回答へのお礼

御回答ありがとうございます。

wormholeさんは、
http://okwave.jp/qa/q6996802.html
の質問にも答えて下さっていますね。
そちらの方が、今回の質問よりもより具体的なので、
そちらで引き続きよろしくお願い致します。

お礼日時:2011/09/12 05:40

補足ですがVisualC++であれば_mbsbtype()で調べることはできます。

    • good
    • 0

「2バイト文字」って何?

この回答への補足

記述するのを忘れていましたが、文字コードはShift_JISです。

補足日時:2011/09/08 01:56
    • good
    • 0
この回答へのお礼

全角文字(2バイトで表される文字)の事です。

お礼日時:2011/09/08 01:23

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!