Память мусора структура pj_str

После выделения и инициализации char* и копирование данных для него

char * uri= new char [strlen(realm) + strlen("sip:") +1]();
strcpy(uri, "sip:");
strcat(uri, realm);

Я передаю это char* в pj_str(char*) функция. Эта функция конвертирует char* в pj_str_t struct который содержит указатель на буфер и его длину.

Затем функция продолжает свою логику и использует uri pj_str,

Перед возвратом функции она должна быть освобождена *uri, При выполнении этой строки кода первые два символа содержат восьмеричные данные мусора, иначе он содержит ожидаемые данные.

delete [] uri;

В чем проблема?!

0

Решение

Разве этого недостаточно, чтобы сделать

delete [] uri;
0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]