Що таке Чар?
Char - це тип даних C ++, призначений для зберігання листів. Чар - це скорочення від персонажа. Це інтегральний тип даних, тобто значення зберігається як ціле число. Char займає обсяг пам'яті 1 байт. У ньому також зберігається один символ.
У цьому підручнику з C ++ ви дізнаєтесь:
- Що таке Чар?
- Що таке ASCII?
- Декларація Чар
- Синтаксис:
- Друк значення ASCII
- Друк значення Char
- Введення символів
- Перетворення символу в рядок
Що таке ASCII?
Значення символу інтерпретується як символ ASCII. Це схоже на те, як булеві значення інтерпретуються як істинні чи хибні. ASCII є абревіатурою від Американського стандартного кодексу для обміну інформацією. Він визначає конкретний спосіб представлення англійських символів як цифр.
Числа варіюються від 0 до 127. Наприклад, символ "a" еквівалентний коду ASCII 97.
Декларація Чар
Щоб оголосити змінну char у C ++, ми використовуємо ключове слово char. Після цього слід вказати назву змінної. Змінна може бути ініціалізована під час оголошення. Значення змінної слід укладати в одинарні лапки.
Синтаксис:
Ось синтаксис для оголошення char у C ++:
char variable-name;
Ім'я змінної - це ім’я, яке присвоюється змінній.
Якщо значення потрібно призначити під час оголошення, ви можете використовувати такий синтаксис:
char variable-name = 'value';
- Ім'я змінної - це ім’я змінної char.
- Значення - це значення, яке призначається змінній char.
Приклад 1:
#includeusing namespace std;int main() {char grade = 'B';cout << "I scored a: "< Вихід:
Ось скріншот коду:
Пояснення коду:
- Включення файлу заголовка iostream до нашого коду для використання його функцій.
- Включення простору імен std в наш код, щоб використовувати його класи, не викликаючи його.
- Виклик функції main (). Логіку програми слід додати в тілі цієї функції.
- Оголосіть символьну змінну з іменем grade. Змінній також було присвоєно значення B. Зверніть увагу, що значення змінної вкладено в одинарні лапки.
- Надрукуйте значення змінної grade поряд з іншим текстом на консолі.
- Після успішного завершення програма повинна повертати значення.
- Кінець тіла основної () функції.
Друк значення ASCII
Як зазначено вище, кожен символ інтерпретується як символ ASCII. Ви можете отримати значення ASCII будь-якого символу. Ви просто передаєте символ функції int (). Цей процес називається типовим литтям. Давайте продемонструємо це:
Приклад 2:
#includeusing namespace std;int main() {char ch;cout << "Enter any character: ";cin >> ch;cout << "The ASCII Value of " << ch << " is " << int(ch);return 0;} Вихід:
Ось скріншот коду:
Пояснення коду:
- Включення файлу заголовка iostream до нашого коду для використання його функцій.
- Включення простору імен std в наш код, щоб використовувати його класи, не викликаючи його.
- Виклик функції main (). Логіку програми слід додати в тілі цієї функції.
- Оголосіть змінну char з іменем ch.
- Роздрукуйте текст на консолі. Текст просить користувача ввести значення для змінної ch.
- Зчитайте введені користувачем дані з клавіатури та збережіть їх у змінній ch.
- Роздрукуйте текст на консолі. Текст включатиме символ, який ви ввели для змінної ch, значення ASCII цього символу та інший текст.
- Після успішного завершення програма повинна повертати значення.
- Кінець тіла основної () функції.
Друк значення Char
Враховуючи значення ASCII, компілятор C ++ може повернути відповідний символ. Ви оголошуєте змінну char і присвоюєте їй ціле значення. Він буде перетворений у відповідне значення символу.
Приклад 3:
#includeusing namespace std;int main() {char x = 64, y = 66, z = 71;cout << x;cout << y;cout << z;return 0;} Вихід:
Ось скріншот коду:
Пояснення коду:
- Включення файлу заголовка iostream до коду. Потім ми будемо використовувати його функції, не отримуючи помилок.
- Включіть в код простір імен std. Ми будемо використовувати його класи, не викликаючи його.
- Виклик функції main (). Логіка програми повинна входити в тіло цієї функції.
- Оголосіть три змінні char, x, y та z. Трьом присвоєно цілі значення 65, 66 і 67. Вони будуть розглядатися як значення ASCII для символів.
- Надрукуйте значення змінної x на консолі. Оскільки x було оголошено як char, буде повернуто char зі значенням ASCII 65, тобто A.
- Роздрукуйте значення змінної y на консолі. Оскільки y було оголошено символом, буде повернуто символ зі значенням ASCII 66, тобто B.
- Виведіть значення змінної z на консолі. Оскільки z було оголошено символом, буде повернуто символ зі значенням ASCII 67, тобто C.
- Після успішного завершення програма повинна повертати значення.
- Кінець тіла основної () функції.
Введення символів
Ми можемо використовувати функцію std :: cin для читання символу, введеного користувачем за допомогою клавіатури. Std :: cin дозволить вам ввести багато символів. Однак символьна змінна може містити лише один символ. Це означає, що лише перший введений символ буде вилучено та збережено у змінній символу. Решта залишиться в буфері, що використовується std :: cin. Щоб витягти його, зробіть наступні виклики на std :: cin.
Приклад 4:
#includeusing 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;} Вихід:
Ось скріншот коду:
Пояснення коду:
- Включення файлу заголовка iostream до нашого коду для використання його функцій.
- Включіть у наш код простір імен std, щоб використовувати його класи, не викликаючи його.
- Виклик функції main (). Логіку програми слід додати в тілі цієї функції.
- Роздрукуйте текст на консолі.
- Оголосіть символьну змінну з іменем ch.
- Зчитайте введення даних користувача з клавіатури. Вхідні дані зберігатимуться у змінній ch. Оскільки користувач набирає послідовність символів, як abc, у змінній ch буде зберігатися лише перший символ a.
- Друк першого введеного символу, його коду ASCII та іншого тексту на консолі. Код ASCII визначається передачею символьної змінної функції int ().
- Прочитайте наступний символ, який ввів користувач. Від користувача не потрібно буде вводити новий символ. Натомість він прочитає другий введений символ, тобто b.
- Друк другого введеного символу, його коду ASCII та іншого тексту на консолі. Код ASCII визначається передачею символьної змінної функції int ().
- Після успішного завершення програма повинна повертати значення.
- Кінець тіла основної () функції.
Перетворення символу в рядок
Існує ряд способів, якими ми можемо скористатися для перетворення символів у рядки.
Давайте їх обговоримо:
№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;} Вихід:
Ось скріншот коду:
Пояснення коду:
- Включення файлу заголовка iostream до нашого коду для використання його функцій.
- Включіть файл заголовка рядка в наш код, щоб використовувати його функції.
- Включіть у наш код простір імен std, щоб використовувати його класи, не викликаючи його.
- Виклик функції main (). Логіку програми слід додати в тілі цієї функції.
- Перетворіть символ "C" у рядок довжиною 1 і призначте отриманий рядок змінній st.
- Надрукуйте значення рядка st на консолі поряд з іншим текстом.
- Після успішного завершення програма повинна повертати значення.
- Кінець тіла основної () функції.
# 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;} Вихід:
Ось скріншот коду:
Пояснення коду:
- Включіть файл заголовка iostream у наш код, щоб використовувати його функції.
- Включіть файл заголовка рядка в наш код, щоб використовувати його функції.
- Включіть у наш код простір імен std, щоб використовувати його класи, не викликаючи його.
- Виклик функції main (). Логіку програми слід додати в тілі цієї функції.
- Створіть рядкову змінну з іменем st.
- Створіть персонажа на ім'я b зі значенням B.
- Присвоїти значення A рядку з іменем st.
- Використовуйте оператор + = для перетворення символів у рядок.
- Надрукуйте значення рядка st на консолі поряд з іншим текстом.
- Після успішного завершення програма повинна повертати значення.
- Кінець тіла основної () функції.
№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;} Вихід:
Ось скріншот коду:
- Включіть файл заголовка iostream у наш код, щоб використовувати його функції.
- Включіть файл заголовка рядка в наш код, щоб використовувати його функції.
- Включіть у наш код простір імен std, щоб використовувати його класи, не викликаючи його.
- Виклик функції main (). Логіку програми слід додати в тілі цієї функції.
- Створіть рядкову змінну з іменем st.
- Призначте символ A до кінця рядка.
- Надрукуйте значення рядка st на консолі поряд з іншим текстом. Endl (кінцевий рядок) переміщує курсор на наступний рядок.
- Встановіть значення рядка st порожнім.
- Присвоїти одному символу C рядку з іменем st.
- Надрукуйте значення рядка st на консолі поряд з іншим текстом. Endl (кінцевий рядок) переміщує курсор на наступний рядок.
- Встановіть значення рядка st порожнім.
- Замініть вміст рядка st на один символ D.
- Надрукуйте значення рядка st на консолі поряд з іншим текстом. Endl (кінцевий рядок) переміщує курсор на наступний рядок.
- Вставте один символ E у рядок з назвою st з першого індексу.
- Надрукуйте значення рядка st на консолі поряд з іншим текстом. Endl (кінцевий рядок) переміщує курсор на наступний рядок.
- Після успішного завершення програма повинна повертати значення.
- Кінець тіла основної () функції.
# 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;} Вихід:
Ось скріншот коду:
Пояснення коду:
- Включіть файл заголовка iostream у наш код, щоб використовувати його функції.
- Включіть файл заголовка рядка в наш код, щоб використовувати його функції.
- Включіть файл заголовка sstream у наш код, щоб використовувати його функції.
- Включіть у наш код простір імен std, щоб використовувати його класи, не викликаючи його.
- Виклик функції main (). Логіку програми слід додати в тілі цієї функції.
- Створіть рядкову змінну з іменем st.
- Створіть змінну потоку з іменем myst.
- Вставте символ A у об’єкт потоку з іменем myst.
- Перетворити об’єкт потоку у рядок.
- Надрукуйте значення рядка st на консолі поряд з іншим текстом. Endl (кінцевий рядок) переміщує курсор на наступний рядок.
- Після успішного завершення програма повинна повертати значення.
- Кінець тіла основної () функції.
Короткий зміст:
- Char - це тип даних C ++, який використовується для зберігання літер.
- C ++ Char - це інтегральний тип даних, тобто значення зберігається як ціле число.
- Він займає обсяг пам'яті 1 байт.
- C ++ Char зберігає лише один символ.
- Значення символу інтерпретуються як символи ASCII.
- ASCII є абревіатурою від Американського стандартного кодексу для обміну інформацією.
- У ній зазначено конкретний спосіб подання англійських символів у вигляді цифр.
- Щоб побачити значення ASCII символу, ми передаємо його функції int ().
- Щоб побачити відповідне значення символу значення ASCII, ми визначаємо ASCII як символ.