Question

Je suis à la recherche par un code à des fins d'apprentissage. Je travaille dans cette partie du code.

// e.g. const unsigned char data={0x1,0x7C ... }
unsigned char buf[40];
memset(buf,0,40);
buf[0] = 0x52;
memcpy(buf+1, data, length); // What does buf+1 do in this situation?

Sur la dernière ligne où memcpy est appelé ce qui ne BUF + 1 faire? BUF est un tableau de caractères, alors qu'est-ce que +1 à faire il?

Était-ce utile?

La solution

En C, chaque nom de tableau est un pointeur, donc buf ici signifie aussi le pointeur qui pointent vers buf [0] .Ensuite "buf + 1" signifie "buf [1]" l 'adresse.

Autres conseils

buf+1 est équivalente à &(buf[1])

buf+1 est le même que &(buf[1]). En d'autres termes, il renvoie un pointeur sur le 2ème (index 1) caractère de buf.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top