Question

Je crée un NSData et utilise la fonction

- (const void *)bytes;

Donc, il renvoie les octets dans un const void * variable.Si je lis la mémoire manuellement, je trouverai ceci :

98 F3 00 76 84    //Then a lot of zero

Utiliser strlen ne fonctionne pas parce que le 00.Mais ce sera toujours la même taille :Longueur 10 hexa.Donc, pour créer manuellement un size_t, j'utiliserai :

size_t mysize = 0x0A

Ou j'ai utilisé la taille en bits :

size_t mysize = 0x28

Est-ce que tout cela est correct ?

Était-ce utile?

La solution

Le NSData contient la longueur.

const void *mybytes = [data bytes];
size_t mysize = [data length];

Autres conseils

nsdata a aussi geniècoDiceCode.

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