Промышленное производство
Промышленный Интернет вещей | Промышленные материалы | Техническое обслуживание и ремонт оборудования | Промышленное программирование |
home  MfgRobots >> Промышленное производство >  >> Industrial programming >> Язык C

Тип данных char в C++: объявление, ASCII и методы преобразования

Что такое char?

Тип char в C++ — фундаментальный целочисленный тип, хранящий одиночный символ. Внутри он представлен как 8-битное целое число, занимая ровно один байт памяти. Поскольку это целочисленный тип, он участвует в арифметических операциях и сравнениях как и другие числовые типы.

В этом уроке вы узнаете:

ASCII — базовое кодирование

Когда значение char хранится, компилятор интерпретирует его как ASCII-код (American Standard Code for Information Interchange). ASCII присваивает целое число (0–127) каждому печатаемому символу. Например, буква 'a' соответствует десятичному значению 97.

Объявление переменной char

Для объявления символьной переменной используйте ключевое слово char и имя. Можно сразу инициализировать одиночным символом в одинарных кавычках.

char variableName;           // Объявление
char variableName = 'X';     // Объявление с инициализацией

Пример 1: Объявление и вывод char

#include <iostream>
using namespace std;
int main() {
    char grade = 'B';
    cout << "I scored a: " << grade;
    return 0;
}

Вывод:

Тип данных char в C++: объявление, ASCII и методы преобразования

Вывод ASCII-значения символа

Так как char по сути целое число, его можно привести к int, чтобы увидеть ASCII-код.

Пример 2: Ввод пользователя и вывод ASCII

#include <iostream>
using namespace std;
int main() {
    char ch;
    cout << "Enter any character: ";
    cin >> ch;
    cout << "The ASCII Value of " << ch << " is " << int(ch);
    return 0;
}

Вывод:

Тип данных char в C++: объявление, ASCII и методы преобразования

Вывод символа по ASCII-коду

Присваивание целочисленного литерала переменной char заставляет компилятор интерпретировать это число как ASCII-код и сохранить соответствующий символ.

Пример 3: Преобразование ASCII в char

#include <iostream>
using namespace std;
int main() {
    char x = 64, y = 66, z = 71;
    cout << x << y << z;
    return 0;
}

Вывод:

Тип данных char в C++: объявление, ASCII и методы преобразования

Чтение символов от пользователя

Оператор извлечения >> читает только первый непробельный символ. Последующие символы остаются в буфере ввода до их чтения.

Пример 4: Чтение двух символов

#include <iostream>
using namespace std;
int main() {
    cout << "Type a sequence of characters: ";
    char ch;
    cin >> ch;
    cout << "The ASCII code of " << ch << " is " << int(ch) << '\n';
    cin >> ch;
    cout << "The ASCII code of " << ch << " is " << int(ch) << '\n';
    return 0;
}

Вывод:

Тип данных char в C++: объявление, ASCII и методы преобразования

Преобразование символа в строку

Существует несколько способов превратить одиночный символ в std::string. Ниже — наиболее распространённые.

#1 — Через конструктор строки

string st(1, 'C');

Создаёт строку длины 1, содержащую символ 'C'.

Пример 5

#include <iostream>
#include <string>
using namespace std;
int main() {
    string st(1, 'C');
    cout << "The resulting string is : " << st;
    return 0;
}

Вывод:

Тип данных char в C++: объявление, ASCII и методы преобразования

#2 — Через перегруженные операторы = и +=

Прямое присваивание символа строке или добавление через += — лаконично и читаемо.

Пример 6

#include <iostream>
#include <string>
using namespace std;
int main() {
    string st;
    char b = 'B';
    st = 'A';
    st += b;
    cout << "The resulting string is : " << st;
    return 0;
}

Вывод:

Тип данных char в C++: объявление, ASCII и методы преобразования

#3 — Через методы строки

Пример 7

#include <iostream>
#include <string>
using namespace std;
int main() {
    string st;
    st.push_back('A');
    cout << "push_back A returns : " << st << endl;
    st = "";
    st.append(1, 'C');
    cout << "append C returns : " << st << endl;
    st = "";
    st.assign(1, 'D');
    cout << "assign D returns : " << st << endl;
    st.insert(0, 1, 'E');
    cout << "insert single character returns : " << st << endl;
    return 0;
}

Вывод:

Тип данных char в C++: объявление, ASCII и методы преобразования

#4 — Через std::stringstream

Потоковые операторы перегружены для char, позволяя легко преобразовать в строку.

Пример 8

#include <iostream>
#include <string>
#include <sstream>
using namespace std;
int main() {
    string st;
    stringstream myst;
    myst << 'A';
    myst >> st;
    cout << "The conversion of the single character returns the string: " << st;
    return 0;
}

Вывод:

Тип данных char в C++: объявление, ASCII и методы преобразования

Ключевые выводы

Язык C

  1. Понимание типов данных C++: основы, модификаторы и лучшие практики
  2. Освоение приведения типов в Java: от расширения к сужению и далее
  3. Использование данных в Интернете надежности: стратегии эффективного управления
  4. Цикл do-while в C++: синтаксис, примеры и вложенные циклы
  5. Указатели в C++: концепции, примеры и практические применения
  6. Перегрузка операторов в C++: практическое руководство с примерами кода
  7. Структуры (struct) в C++: объяснение с практическим примером
  8. Освоение std::list в C++: синтаксис, функции и практические примеры
  9. Функции в C++: подробное объяснение с практическими примерами кода
  10. Максимизация ROI IoT с продвинутым мониторингом производительности