この記事では、C言語を使って全角文字かどうかを判定する方法を解説します。
目次から探す
全角文字の判定方法
Unicodeは、世界のほとんどの文字を表現するための文字コードです。
C言語では、Unicodeを利用して全角文字かどうかを判定することもできます。
以下に、Unicodeを利用して全角文字かどうかを判定するサンプルコードを示します。
#include <stdio.h>
#include <wchar.h>
#include <wctype.h>
int isFullWidth(wchar_t c) {
if (iswprint(c) && !iswcntrl(c) && !iswascii(c)) {
return 1; // 全角文字
} else {
return 0; // 半角文字
}
}
int main() {
wchar_t c = L'あ';
if (isFullWidth(c)) {
printf("全角文字です\n");
} else {
printf("半角文字です\n");
}
return 0;
}
上記のコードでは、isFullWidth関数
を定義しています。
この関数は、引数として受け取った文字が全角文字かどうかを判定し、結果を返します。
main関数
では、文字'あ'
を判定して結果を表示しています。
実行結果は以下の通りです。
全角文字です
以上が、C言語を使用して全角文字かどうかを判定する方法です。
全角文字は2バイト以上のマルチバイト文字であるため、1バイトのchar型では正しく処理できない点に注意してください。