Функция malloc() - найти разницу между двумя реализациями - C (СИ)

Узнай цену своей работы

Формулировка задачи:

Добрый вечер. Скажите, пожалуйста, есть ли разница между записями:
buf=(char*)malloc((strlen(str)*2)*sizeof(char))
и
buf=(char*)malloc(strlen(str)*2)
Если да, то какая? Ещё хочу понять, почему в строку buf может записываться большее число символов, в независимости от выделенной памяти?

Решение задачи: «Функция malloc() - найти разницу между двумя реализациями»

textual
Листинг программы
char pathname[PATH_MAX+1]

Объяснение кода листинга программы

  1. Объявляется массив типа char с именем pathname и размером в 1 элемент больше, чем максимальный размер пути в файловой системе (PATH_MAX).
  2. В этом массиве будет храниться путь к файлу.
  3. Размер массива вычисляется как PATH_MAX + 1.
  4. Массив pathname инициализируется нулевыми значениями.

ИИ для рефератов и докладов


  • Экспорт Word по ГОСТу
  • Минимум 80% уникальности текста
  • Поиск релевантных источников в интернете
  • Готовый документ за 2 минуты

Оцени полезность:

11   голосов , оценка 4 из 5
Похожие ответы