- Копирование указателя и выделение памяти, datswd, 21:02 , 17-Сен-20 (1)
- Копирование указателя и выделение памяти, ACCA, 04:49 , 21-Сен-20 (5)
- Копирование указателя и выделение памяти, Ivanr, 17:04 , 22-Ноя-20 (13)
> И что именно происходит, если сделать вот такЖ > char *a, *b; > b = malloc(1); > a = b; > a = realloc(a, 1000); > strcpy(a, ";aaa"); > printf("%s", b); Тут у тебя как повезет, реаллок может вернуть старый указатель, а может новый, но писать на авось это плохо
- Копирование указателя и выделение памяти, PavelR, 09:26 , 18-Сен-20 (2)
- Копирование указателя и выделение памяти, Ivanr, 16:58 , 22-Ноя-20 (12)
>[оверквотинг удален] > Потом мы делаем > a = b > a = malloc(100); > strcpy(a, "lolo"); > printf("%s", b); > Когда делается malloc связка между a и b теряется. И printf выводит > null. > Можно ли как-нибудь сделать так, чтобы связка между указателями не терялась и > printf выводил "lolo"? > Заранее благодарен.Когда выполняется следующая команда: a = malloc(100) То значение, ранее содержащееся в переменной а заменяется тем, что вернул маллок
|