【C言語】アスキーコードの文字と数値を変換する方法

この記事では、C言語で文字とアスキーコードを相互に変換する方法を紹介します。

目次から探す

文字からアスキーコードへの変換

C言語では、文字をアスキーコードに変換する方法があります。

アスキーコードとは、文字に対応する数値のことです。

文字をアスキーコードに変換するには、以下のような方法があります。

方法1: キャスト演算子を使用する方法

#include <stdio.h>
int main() {
    char c = 'A';
    int ascii = (int)c;
    
    printf("文字 '%c' のアスキーコードは %d です。\n", c, ascii);
    
    return 0;
}

上記のコードでは、変数 c に文字 'A' を代入し、キャスト演算子 (int) を使って cint 型に変換しています。

変換結果は変数 ascii に代入され、printf 関数を使って結果を表示しています。

方法2: アスキーコードを直接代入する方法

#include <stdio.h>
int main() {
    char c = 'B';
    int ascii = c;
    
    printf("文字 '%c' のアスキーコードは %d です。\n", c, ascii);
    
    return 0;
}

上記のコードでは、変数 c に文字 'B' を代入し、キャストせずそのまま変数 ascii に代入しています。

キャスト演算子を使わずに直接代入することもできます。

キャスト演算子 (int) を使って明示的に変換する方法と、直接代入する方法の結果は同じです。

アスキーコードから文字への変換

C言語では、アスキーコードを文字に変換する方法もあります。

アスキーコードから文字に変換するには、以下のような方法があります。

方法1: キャスト演算子を使用する方法

#include <stdio.h>
int main() {
    int ascii = 65;
    char c = (char)ascii;
    
    printf("アスキーコード %d の文字は '%c' です。\n", ascii, c);
    
    return 0;
}

上記のコードでは、変数 ascii にアスキーコード 65 を代入し、キャスト演算子 (char) を使って asciichar 型に変換しています。

変換結果は変数 c に代入され、printf 関数を使って結果を表示しています。

方法2: アスキーコードを直接代入する方法

#include <stdio.h>
int main() {
    int ascii = 66;
    char c = ascii;
    
    printf("アスキーコード %d の文字は '%c' です。\n", ascii, c);
    
    return 0;
}

上記のコードでは、変数 ascii にアスキーコード 66 を代入し、そのまま変数 c に代入しています。

キャスト演算子を使わずに直接代入することもできます。

キャスト演算子 (char) を使って明示的に変換する方法と、直接代入する方法の結果は同じです。

以上が、C言語で文字からアスキーコードへの変換と、アスキーコードから文字への変換の方法です。

目次から探す