Как правильно скопировать массив? - C (СИ)
Формулировка задачи:
Всем привет, есть массив фамилий, я его расставляю по алфавиту и вывожу, все вроде бы ок, но мне надо чтоб исходный массив выводился так же в конце программы, то есть программа должна запомнить его и потом вывести, я это хочу сделать через копию массива, нигде не нашел инфы как правильно скопировать массив, подскажите пожалуйста как,
#include <iostream> #include <conio.h> int main() { int i, j; char words[8][128]= {"Ivanov, Ivan", "Petrov, Petr", "Sidorov, Ivan", "Aladov, Dima", "Pavlov, Pavel", "Katov, Sasha", "Balonov, Vova", "Maslov, Zheka"}; char (*names)[8][128]; names = &words; int ages[8] = {18, 15, 20, 22, 34, 32, 21, 12}; for(i=0;i<7;i++) for(j=i+1;j<8;j++) if(strcmp((*names)[i],(*names)[j])>0) { char cur[64]; strcpy(cur,(*names)[i]); strcpy((*names)[i],(*names)[j]); strcpy((*names)[j],cur); } printf("Results:\n"); for(i=0;i<8;i++) printf("%s\n", (*names)[i]); printf("\n"); getch(); return 0; }
Решение задачи: «Как правильно скопировать массив?»
textual
Листинг программы
char old_words[8][128]; /* ... */ memcpy(old_words, words, sizeof words);
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д