Имя пользователя:
Пароль:
 

Показать сообщение отдельно

Аватара для User001

Ветеран


Сообщения: 740
Благодарности: 116

Профиль | Отправить PM | Цитировать


Цитата kennydzzze:
void f(char *c, int *n)»
Надо передавать указатель на указатель, если вы хотите его изменять.
Код: Выделить весь код
void f(char **c, int *n)
Соответственно:
Цитата kennydzzze:
c=(char*)malloc(*n+1);»
Код: Выделить весь код
*c = (char*)malloc(*n+1);
Цитата kennydzzze:
c[i]='a';»
Код: Выделить весь код
(*c)[i]='a';
Тут в принципе неверно:
Цитата kennydzzze:
printf("%c",&c[i]);»
Код: Выделить весь код
printf("%c", c[i]);
А еще надо память и освобождать.

И основной вопрос - зачем вам вообще вся эта адресная арифметика?
Это сообщение посчитали полезным следующие участники:

Отправлено: 14:54, 11-04-2016 | #2