Then, why not use #define?
Code:
#include <stdlib.h>

void* MyAlloc(size_t)
{
  void* p;
  // ... 
  return p;
}
#define malloc(s) MyAlloc(s)

int main()
{
  void* p = malloc( 1 ); // MyAlloc will be called instead of stdlib malloc
  return 0;
}