C++で文字をASCIIに変換する方法


  1. 文字をASCIIコードに変換する方法: 以下のコードは、C++の標準ライブラリを使用して文字をASCIIコードに変換する方法です。
#include <iostream>
int main() {
    char c = 'A';
    int asciiValue = static_cast<int>(c);

    std::cout << "Character: " << c << std::endl;
    std::cout << "ASCII Value: " << asciiValue << std::endl;

    return 0;
}
  1. 文字列をASCIIコードに変換する方法: 以下のコードは、文字列をASCIIコードに変換する方法です。文字列の各文字に対して、同様の手順を繰り返します。
#include <iostream>
#include <string>
int main() {
    std::string str = "Hello";

    for (char c : str) {
        int asciiValue = static_cast<int>(c);
        std::cout << "Character: " << c << std::endl;
        std::cout << "ASCII Value: " << asciiValue << std::endl;
    }

    return 0;
}
  1. Unicode文字をASCIIコードに変換する方法: 以下のコードは、Unicode文字をASCIIコードに変換する方法です。Unicode文字をASCIIに変換する場合、ASCIIに対応していない文字は変換できません。
#include <iostream>
#include <locale>
int main() {
    std::locale loc;
    wchar_t unicodeChar = L'あ';

    if (std::use_facet<std::ctype<wchar_t>>(loc).is(std::ctype_base::print, unicodeChar)) {
        char asciiChar = std::use_facet<std::ctype<wchar_t>>(loc).narrow(unicodeChar, '?');
        int asciiValue = static_cast<int>(asciiChar);

        std::cout << "Unicode Character: " << unicodeChar << std::endl;
        std::cout << "ASCII Character: " << asciiChar << std::endl;
        std::cout << "ASCII Value: " << asciiValue << std::endl;
    } else {
        std::cout << "The Unicode character cannot be converted to ASCII." << std::endl;
    }

    return 0;
}

これらのコード例を使用すると、C++で文字をASCIIコードに変換することができます。必要に応じて、これらの例をカスタマイズして使用してください。また、文字列内のすべての文字をASCIIコードに変換する別の方法や、他の関連するトピックについても調べてみることをお勧めします。