【C言語】全角文字かどうか判定する方法を解説

この記事では、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型では正しく処理できない点に注意してください。

目次から探す