Comment imprimer unsigned char* dans NSLog()
Titre dit à peu près tout.
à imprimer (PAS de virgule), mais en unsigned char valeur (HEX).
exemple
unsigned char data[6] = {70,AF,80,1A, 01,7E};
NSLog(@"?",data); //need this output : 70 AF 80 1A 01 7E
Une idée? Merci à l'avance.
Utiliser printf et un
Je suppose que vous auriez à faire
for
boucle: stackoverflow.com/questions/6357031/...Je suppose que vous auriez à faire
@"%02X %@02X %@02X ...", (unsigned int)data[0], (unsigned int)data[1], ...
OriginalL'auteur HelmiB | 2012-11-23
Vous devez vous connecter pour publier un commentaire.
Il n'y a pas de spécificateur de format pour une
char
tableau. Une option serait de créer unNSData
objet à partir de la matrice et puis le journal de laNSData
objet.s
-- mais il s'attend à une chaîne se terminant par null et imprime en caractères ASCII, pas hex.C'est pourquoi je n'ai pas mentionné
%s
parce que nous n'avons pas affaire avec une valeur nullchar
tableau et la sortie désirée est tout à fait différent de ce que%s
fournit.hors sujet, mais comment vous suffit d'imprimer unsigned char? pas un tableau.
%c
est pour unsigned char. Tirez vers le haut de la documentation pourNSString stringWithFormat:
. Cliquez sur le lien "Chaîne de Spécificateurs de Format". Mais c %imprime le caractère, non pas la valeur hex.si vous souhaitez imprimer l'hexagone, l'utilisation
%x
est-il?OriginalL'auteur rmaddy
Rien dans les bibliothèques standard va le faire, si vous pouviez écrire un petit vidage hexadécimal de la fonction, ou vous pouvez utiliser autre chose que des impressions non-ambiguë de données complète. Quelque chose comme:
Pour de petits morceaux de données, vous pouvez essayer de faire un NSData et l'utilisation de la debugDescription méthode. C'est actuellement un vidage hexadécimal, mais rien ne promet que cela sera toujours un.
#include <vis.h> Voir la page de man pour strvisx pour plus de détails.
OriginalL'auteur Stripes
Pour imprimer char* dans NSLog essayez ce qui suit:
Vous aurez besoin de
null
mettre fin à votre chaîne.De La Documentation D'Apple:
Retourne un objet NSString initialisé par copier les caractères à partir d'une donnée C tableau de UTF8 codé octets.
OriginalL'auteur victorfigol