C: присвоение void * себе при передаче функции - PullRequest
2 голосов
/ 04 июня 2010

Я читаю исходный код LZMA SDK и заметил, что они присваивают указатели, переданные в метод себе - пример (из SDK, C / Util / 7z / 7zAlloc.c):

void *SzAlloc(void *p, size_t size)
{
  p = p;     <-- !
  if (size == 0)
    return 0;
  #ifdef _SZ_ALLOC_DEBUG
  fprintf(stderr, "\nAlloc %10d bytes; count = %10d", size, g_allocCount);
  g_allocCount++;
  #endif
  return malloc(size);
}

Может кто-нибудь объяснить, почему они это делают?

1 Ответ

8 голосов
/ 04 июня 2010

Чтобы избежать предупреждений компилятора о неиспользуемых параметрах.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...