Записать содержимое array[] в переменную char *var - C (СИ)

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

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

Имеется у меня массив char array[8]={1,1,1,1,0,0,0,0} стараюсь записать содержимое array[] в переменную char *var т.е. хочу в конечном итоге, чтобы переменная var была инициализированна значением "11110000", пытался сделать это сдеть с помощью цикла for и функции sprintf() - не вышло, так же пытался сделать при помщи функции конкатенации strcat() - не вышло, может кто подскажет как выполнить данную задачу???

Решение задачи: «Записать содержимое array[] в переменную char *var»

textual
Листинг программы
char array[8] = { 1, 1, 1, 1, 0, 0, 0, 0 };
char* var = (char*)calloc(9, sizeof(char));
int i = 0;
for (; i < 8; var[i] = '0'+array[i++]);
puts(var);

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

  1. Объявляется массив array[] типа char с размером 8 элементов и инициализируется значениями 1, 1, 1, 1, 0, 0, 0, 0.
  2. В динамической памяти выделяется участок размером 9 элементов для переменной типа char* с именем var с помощью функции calloc().
  3. Инициализируется счётчик i значением 0.
  4. Запускается цикл for, который выполняется до тех пор, пока значение счётчика i меньше 8.
  5. Значение переменной array[i] преобразуется в строку и записывается в переменную var с индексом i.
  6. Значение счётчика i увеличивается на 1 после каждой итерации цикла.
  7. Выводится на экран значение переменной var с помощью функции puts().

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


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

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

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