Ajouter la longueur de la chaine à unsigned char *

Signaler
Messages postés
102
Date d'inscription
jeudi 29 mai 2003
Statut
Membre
Dernière intervention
23 juin 2008
-
Messages postés
14982
Date d'inscription
lundi 11 juillet 2005
Statut
Modérateur
Dernière intervention
2 mars 2021
-
Bonjour,



j'ai encore un problème avec une variable unsigned char *



ma variable contient au maximum 255 caractere et je dois ajouter la
longueur reel de la chaine comme 1er caractere (pour que cela soit une
chaine pascal)



si qqn peut m'aider?



j'ai essayer de lire des cours de C sur le net mais rien qui m'aide vraimment...

3 réponses

Messages postés
1536
Date d'inscription
samedi 21 décembre 2002
Statut
Membre
Dernière intervention
24 mai 2009
2
unsigned char Chaine[257]; //257 car l'octet pour la taille + 255 caracteres au max + zero final.


*Chaine len; //len a la taille de la chaine. len < 255


Puis apres tu ecris tes caracteres en commencant par l'indice 1.

+2(p-n)
Messages postés
102
Date d'inscription
jeudi 29 mai 2003
Statut
Membre
Dernière intervention
23 juin 2008
4
mais le problème c'est que ma variable unsigned char * contient déjà ma
chaine simplement il faut que j'ajoute la longueur de cette chaine au
début.



donc il faut que je trouve la longueur de la chaine et que je le place au début
Messages postés
14982
Date d'inscription
lundi 11 juillet 2005
Statut
Modérateur
Dernière intervention
2 mars 2021
94
Et bin tu crée une autre chaine, comme l'a dit AlexMAN et tu fais comme ça:


unsigned char Chaine2[257]; //257 car l'octet pour la taille + 255 caracteres au max + zero final.



*Chaine2 = strlen(Chaine1);

strcpy(Chaine2[1], Chaine1);







Buno
----------------------------------------
L'urgent est fait, l'impossible reste à faire. Pour les miracles, prévoir un délai...