- И что именно происходит, если сделать вот такЖ char a, b b malloc 1 , datswd (?), 21:02 , 17-Сен-20 (1)
И что именно происходит, если сделать вот такЖ char *a, *b; b = malloc(1); a = b; a = realloc(a, 1000); strcpy(a, ";aaa"); printf("%s", b);
- Сильно лучше и даже заработает, но нафига тебе realloc Ты уж сразу определись, ч, ACCA (ok), 04:49 , 21-Сен-20 (5)
- Тут у тебя как повезет, реаллок может вернуть старый указатель, а может новый, , Ivanr (?), 17:04 , 22-Ноя-20 (13)
- Используй указатель на указатель , PavelR (??), 09:26 , 18-Сен-20 (2)
Используй указатель на указатель.
- gt оверквотинг удален Когда выполняется следующая команда a malloc 100 То , 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) То значение, ранее содержащееся в переменной а заменяется тем, что вернул маллок
|