compréhension de C pointeurs
Bonjour
J'ai vu dans un texte (ooc) un code que je ne comprend pas bien ?
Quelqu'un pourrait-il m'expliquer ?
le code problématique est en bleu
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14
|
void * new (const void * _class, ...) {
const struct Class *class = _class;
void *p = calloc(1, class->size);
assert(p);
*(const struct Class **) p = class;
if (class -> ctor != 0)
{ va_list ap;
va_start(ap, _class);
p = class -> ctor(p, & ap);
va_end(ap);
}
return p;
} |
qu'est ce que change dans le pointeur p après cette ligne ?
Merci de votre aide