Добавление символов в переменную строкового типа - C (СИ)

Узнай цену своей работы

Формулировка задачи:

нашел вот такой пример:
void strcat_char(char *str, char ch)
{
while (str) str++;//доходим до конца строки
*str = ch;//пишем в конец строки
}
но компилятор BCC выдает null, NULL pointer assigment

Решение задачи: «Добавление символов в переменную строкового типа»

textual
Листинг программы
#include <iostream>
#include <cstring>
 
int main()
{
    char ch[5] = {'a','a','a',0,0}; // здесь строка оканчивается нуль-символом...
    //... и один символ мы оставили для соединенной строки ch1(в этой строке 1 символ,...
    //... поэтому мы оставили 1 символ (у нас еще один нуль)
    char ch1[2] = {'b',0}; // строка,которую хотим присоединять
    strcat(ch,ch1); // присоединение
 
    std::cout << ch << std::endl; // вывод
 
    return 0;
}

Объяснение кода листинга программы

  1. Подключение необходимых библиотек для работы со строками и вводом-выводом
  2. Объявление переменной типа char с именем ch и размером 5, инициализация ее тремя символами 'a' и двумя нулевыми символами 0
  3. Объявление переменной типа char с именем ch1 и размером 2, инициализация ее двумя символами 'b' и одним нулевым символом 0
  4. Использование функции strcat для присоединения строки ch1 к ch. Эта функция добавляет копию строки ch1 в конец строки ch. При этом в строке ch добавляется символ 0, который является маркером конца строки в C
  5. Вывод результата на экран с помощью std::cout
  6. Возврат значения 0, что означает успешный конец работы программы

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

6   голосов , оценка 4 из 5
Похожие ответы