Почему делает склеп (), функция не имеет утечку памяти?

От склепа (3) - страница справочника Linux:

char *crypt(const char *key, const char *salt);

Возвращаемое значение: указатель на зашифрованный пароль возвращается. На ошибке, NULL возвращается.

Так как возвращаемое значение неизвестно, если ключ и соль не даны, это должно быть динамично выделенной памятью, но valgrind не соглашается.

5
задан Jonas Schäfer 15 August 2014 в 10:19
поделиться

2 ответа

с страницы человека:

Возвращаемое значение указывает на статические данные Чей содержание перезаписывается каждым вызовом.

Так что это означает, что это не динамично выделяется - это одно статическое распределение (как правило, как глобальная переменная).

9
ответ дан 13 December 2019 в 05:35
поделиться

Со страницы, которую вы связали:

Возвращаемое значение указывает на зашифрованный пароль, серию из 13 печатаемых ASCII-символов (первые два символа представляют саму соль). Возвращаемое значение указывает на статические данные, содержимое которых перезаписывается при каждом вызове.

3
ответ дан 13 December 2019 в 05:35
поделиться
Другие вопросы по тегам:

Похожие вопросы: