Сегодня мне сказали, что я могу легко взять содержимое статического массива и скопировать данные на динамически выделенный. Я долго искал и до сих пор не нашел хорошего объяснения, как и почему это возможно. Например, если у меня есть код следующим образом,Назначение значений из статического массива символов динамически выделенному массиву символов
int i = 0;
char array[64];
for (; i < 64; ++i)
{
array[i] = "a";
}
char* dynamicArray = (char*) malloc (sizeof (char*) * strlen (array));
мне сказали, что я мог бы взять содержимое массива, который в данном случае представляет собой массив элементов а, и скопировать эти данные на мой динамический массив. Я все еще смущен тем, как я могу это сделать, поскольку такие функции, как memcpy и strcpy, не работают со статическим массивом. Возможно ли такое копирование? Спасибо за помощь, и я надеюсь, что мои объяснения будут в порядке.
Большое спасибо за объяснения его вместе с комментариями. Это очень помогло. Другой вопрос: если бы я использовал этот метод копирования в функции, то, используя его для вставки скопированных данных в список, есть ли способ освободить память после вставки без потери вставленных данных? – user3040968