Ivan Jobs
Ivan Jobs

Reputation: 71

I found some weird function signature in glibc, can anyone expain it to me?

#include <string.h>
#include <memcopy.h>
#include <pagecopy.h>

#undef memcpy

void *
memcpy (dstpp, srcpp, len)
 void *dstpp;
 const void *srcpp;
 size_t len;
{
  unsigned long int dstp = (long int) dstpp;
  unsigned long int srcp = (long int) srcpp;
  ...

This is our familiar lib function memcpy's implementation, but I don't recognize its signature and I've never seen it before. Can anyone tell me what it is?

Upvotes: 0

Views: 130

Answers (1)

Employed Russian
Employed Russian

Reputation: 213706

This is our familiar lib function memcpy's implementation, but I don't recognize its signature

Which aspect of it don't you recognize? Is it the fact that it is written in K&R (pre-ANSI) C, or something else? Would you have recognized it if it was written that way instead:

void *
memcpy(void *dstpp, const void *srcpp, size_t len)
{
  ...

}

Upvotes: 2

Related Questions