Тип данных C ++ Char с примерами

Содержание:

Anonim

Что такое Чар?

Char - это тип данных C ++, предназначенный для хранения писем. Char - это аббревиатура персонажа. Это интегральный тип данных, то есть значение хранится как целое число. Символ занимает размер памяти 1 байт. Он также хранит один символ.

В этом руководстве по C ++ вы узнаете:

  • Что такое Чар?
  • Что такое ASCII?
  • Char Декларация
  • Синтаксис:
  • Печать значения ASCII
  • Значение символа печати
  • Ввод символов
  • Преобразование символа в строку

Что такое ASCII?

Значение char интерпретируется как символ ASCII. Это похоже на то, как логические значения интерпретируются как истинные или ложные. ASCII - это аббревиатура от American Standard Code for Information Interchange. Он определяет особый способ представления английских символов в виде чисел.

Диапазон чисел от 0 до 127. Например, символ «a» эквивалентен коду ASCII 97.

Char Декларация

Чтобы объявить переменную типа char в C ++, мы используем ключевое слово char. За ним должно следовать имя переменной. Переменная может быть инициализирована во время объявления. Значение переменной следует заключать в одинарные кавычки.

Синтаксис:

Вот синтаксис объявления char в C ++:

char variable-name;

Имя-переменной - это имя, которое будет присвоено переменной.

Если значение должно быть присвоено во время объявления, вы можете использовать этот синтаксис:

char variable-name = 'value';
  • Имя-переменной - это имя переменной типа char.
  • Значение - это значение, которое будет присвоено переменной типа char.

Пример 1:

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

Выход:

Вот скриншот кода:

Пояснение к коду:

  1. Включение файла заголовка iostream в наш код для использования его функций.
  2. Включение пространства имен std в наш код, чтобы использовать его классы без его вызова.
  3. Вызов функции main (). Логика программы должна быть добавлена ​​в тело этой функции.
  4. Объявите символьную переменную с именем grade. Переменной также присвоено значение B. Обратите внимание, что значение переменной заключено в одинарные кавычки.
  5. Напечатайте значение переменной оценки рядом с другим текстом на консоли.
  6. Программа должна вернуть значение после успешного завершения.
  7. Конец тела функции main ().

Печать значения ASCII

Как указано выше, каждый символ интерпретируется как символ ASCII. Вы можете получить значение ASCII любого символа. Вы просто передаете символ в функцию int (). Этот процесс называется приведением типа. Продемонстрируем это:

Пример 2:

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

Выход:

Вот скриншот кода:

Пояснение к коду:

  1. Включение файла заголовка iostream в наш код для использования его функций.
  2. Включение пространства имен std в наш код, чтобы использовать его классы без его вызова.
  3. Вызов функции main (). Логика программы должна быть добавлена ​​в тело этой функции.
  4. Объявите переменную типа char с именем ch.
  5. Напечатайте текст на консоли. Текст просит пользователя ввести значение переменной ch.
  6. Прочтите ввод пользователя с клавиатуры и сохраните его в переменной ch.
  7. Напечатайте текст на консоли. Текст будет включать символ, который вы ввели для переменной ch, ​​значение ASCII этого символа и другой текст.
  8. Программа должна вернуть значение после успешного завершения.
  9. Конец тела функции main ().

Значение символа печати

Учитывая значение ASCII, компилятор C ++ может вернуть соответствующий символ. Вы объявляете переменную типа char и присваиваете ей целочисленное значение. Он будет преобразован в соответствующее символьное значение.

Пример 3:

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

Выход:

Вот скриншот кода:

Пояснение к коду:

  1. Включение файла заголовка iostream в код. Затем мы будем использовать его функции без ошибок.
  2. Включите в код пространство имен std. Мы будем использовать его классы, не вызывая его.
  3. Вызов функции main (). Логика программы должна входить в тело этой функции.
  4. Объявите три символьные переменные x, y и z. Этим трем были присвоены целочисленные значения 65, 66 и 67. Они будут рассматриваться как значения ASCII для символов.
  5. Распечатайте значение переменной x на консоли. Поскольку x был объявлен как char, будет возвращен char со значением ASCII 65, то есть A.
  6. Распечатайте значение переменной y на консоли. Поскольку y был объявлен как char, будет возвращен char со значением ASCII 66, то есть B.
  7. Распечатайте значение переменной z на консоли. Поскольку z был объявлен как char, будет возвращен char со значением ASCII 67, то есть C.
  8. Программа должна вернуть значение после успешного завершения.
  9. Конец тела функции main ().

Ввод символов

Мы можем использовать функцию std :: cin для чтения символа, введенного пользователем с клавиатуры. Std :: cin позволит вам ввести много символов. Однако символьная переменная может содержать только один символ. Это означает, что только первый введенный символ будет извлечен и сохранен в символьной переменной. Остальное останется в буфере, используемом std :: cin. Чтобы извлечь его, выполните последующие вызовы std :: cin.

Пример 4:

#include 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;}

Выход:

Вот скриншот кода:

Пояснение к коду:

  1. Включение файла заголовка iostream в наш код для использования его функций.
  2. Включите пространство имен std в наш код, чтобы использовать его классы без его вызова.
  3. Вызов функции main (). Логика программы должна быть добавлена ​​в тело этой функции.
  4. Напечатайте текст на консоли.
  5. Объявите символьную переменную с именем ch.
  6. Прочтите ввод пользователя с клавиатуры. Ввод будет сохранен в переменной ch. Поскольку пользователь будет вводить последовательность символов, например abc, только первый символ a будет сохранен в переменной ch.
  7. Печать первого введенного символа, его кода ASCII и другого текста на консоли. Код ASCII определяется путем передачи символьной переменной в функцию int ().
  8. Прочтите следующий символ, введенный пользователем. От пользователя не потребуется вводить нового символа. Вместо этого он будет читать второй введенный символ, то есть b.
  9. Печать второго введенного символа, его кода ASCII и другого текста на консоли. Код ASCII определяется путем передачи символьной переменной в функцию int ().
  10. Программа должна вернуть значение после успешного завершения.
  11. Конец тела функции main ().

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

Существует несколько способов преобразования символов в строки.

Обсудим их:

# 1: Использование конструктора, заданного строковым классом

Это можно сделать, используя следующий синтаксис:

string st(int n,char x);

Параметр n обозначает размер строки, которая должна быть сгенерирована.

Параметр x - это символ, который нужно преобразовать в строку.

Функция возвращает строку.

Пример 5:

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

Выход:

Вот скриншот кода:

Пояснение к коду:

  1. Включение файла заголовка iostream в наш код для использования его функций.
  2. Включите файл заголовка строки в наш код, чтобы использовать его функции.
  3. Включите пространство имен std в наш код, чтобы использовать его классы без его вызова.
  4. Вызов функции main (). Логика программы должна быть добавлена ​​в тело этой функции.
  5. Преобразуйте символ «C» в строку длиной 1 и присвойте полученную строку переменной st.
  6. Напечатайте значение строки st на консоли рядом с другим текстом.
  7. Программа должна вернуть значение после успешного завершения.
  8. Конец тела функции main ().

# 2) Использование std :: string Operators = и + =

Операторы = и + = уже перегружены символами. Эти два могут использоваться для преобразования определенного символа в строку.

Пример 6:

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

Выход:

Вот скриншот кода:

Пояснение к коду:

  1. Включите файл заголовка iostream в наш код, чтобы использовать его функции.
  2. Включите файл заголовка строки в наш код, чтобы использовать его функции.
  3. Включите пространство имен std в наш код, чтобы использовать его классы без его вызова.
  4. Вызов функции main (). Логика программы должна быть добавлена ​​в тело этой функции.
  5. Создайте строковую переменную с именем st.
  6. Создайте персонажа с именем b со значением B.
  7. Присвойте значение A строке с именем st.
  8. Используйте оператор + = для преобразования символов в строку.
  9. Напечатайте значение строки st на консоли рядом с другим текстом.
  10. Программа должна вернуть значение после успешного завершения.
  11. Конец тела функции main ().

# 3: Использование методов std :: string

Класс std :: string имеет множество перегруженных функций, которые могут помочь вам преобразовать символы в строки.

Они включают:

  • отталкивать

    Эта функция назначает конец строки определенным символом. Он перегружен по символам.

    Требуется следующий синтаксис:

    void push_back(char ch)

    Параметр ch - это символ, который нужно заменить на строку.

  • добавить

    Он присваивает строке множество копий определенного символа.

    Функция имеет следующий синтаксис:

    string& append(size_t n,char ch)

    Параметр n обозначает время добавления символа.

    Параметр ch - это символ, добавляемый к строке.

  • назначать

    Эта функция заменяет текущее содержимое строки n копиями указанного символа.

    Требуется следующий синтаксис:

    string& assign(size_t n,char ch);

    Параметр n обозначает общее количество копий персонажа.

    Параметр ch - это символ, который нужно скопировать в строку.

  • вставлять

    Функция вставки вставляет n копий символа в начальную позицию строки, как указано в аргументах.

    Требуется следующий синтаксис:

    string& insert(size_t p,size_t n,char ch); 

    Параметр p обозначает позицию с начала, куда будут вставлены символы.

    Параметр n обозначает общее количество копий персонажа.

    Параметр ch - это символ, который нужно вставить в строку.

Пример 7:

#include#include 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;}

Выход:

Вот скриншот кода:

  1. Включите файл заголовка iostream в наш код, чтобы использовать его функции.
  2. Включите файл заголовка строки в наш код, чтобы использовать его функции.
  3. Включите пространство имен std в наш код, чтобы использовать его классы без его вызова.
  4. Вызов функции main (). Логика программы должна быть добавлена ​​в тело этой функции.
  5. Создайте строковую переменную с именем st.
  6. Присвойте символ A концу строки.
  7. Напечатайте значение строки st на консоли рядом с другим текстом. Endl (конечная строка) перемещает курсор на следующую строку.
  8. Установите значение строки st пустым.
  9. Назначьте одиночный символ C строке с именем st.
  10. Напечатайте значение строки st на консоли рядом с другим текстом. Endl (конечная строка) перемещает курсор на следующую строку.
  11. Установите значение строки st пустым.
  12. Замените содержимое строки st одиночным символом D.
  13. Напечатайте значение строки st на консоли рядом с другим текстом. Endl (конечная строка) перемещает курсор на следующую строку.
  14. Вставьте один символ E в строку с именем st, начиная с ее первого индекса.
  15. Напечатайте значение строки st на консоли рядом с другим текстом. Endl (конечная строка) перемещает курсор на следующую строку.
  16. Программа должна вернуть значение после успешного завершения.
  17. Конец тела функции main ().

# 4: Использование std :: stringstream

Чтобы использовать этот класс для преобразования символа в строку, вставьте символ в поток.

Они будут записаны в строку.

Пример 8:

#include#include #include 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;}

Выход:

Вот скриншот кода:

Пояснение к коду:

  1. Включите файл заголовка iostream в наш код, чтобы использовать его функции.
  2. Включите файл заголовка строки в наш код, чтобы использовать его функции.
  3. Включите файл заголовка sstream в наш код, чтобы использовать его функции.
  4. Включите пространство имен std в наш код, чтобы использовать его классы без его вызова.
  5. Вызов функции main (). Логика программы должна быть добавлена ​​в тело этой функции.
  6. Создайте строковую переменную с именем st.
  7. Создайте переменную потока с именем myst.
  8. Вставьте символ A в объект потока с именем myst.
  9. Преобразуйте объект потока в строку.
  10. Напечатайте значение строки st на консоли рядом с другим текстом. Endl (конечная строка) перемещает курсор на следующую строку.
  11. Программа должна вернуть значение после успешного завершения.
  12. Конец тела функции main ().

Резюме:

  • Символ - это тип данных C ++, используемый для хранения писем.
  • C ++ Char - это интегральный тип данных, то есть значение хранится как целое число.
  • Он занимает размер памяти 1 байт.
  • C ++ Char хранит только один символ.
  • Значения символов интерпретируются как символы ASCII.
  • ASCII - это аббревиатура от American Standard Code for Information Interchange.
  • В нем указывается особый способ представления английских символов в виде чисел.
  • Чтобы увидеть значение ASCII символа, мы передаем его функции int ().
  • Чтобы увидеть соответствующее значение символа для значения ASCII, мы определяем ASCII как символ.