salut à tous et à toutes
j'ai défini une variable pointeur:
char *mot;
je voudrais faire l'allocation dynamique de la mémoire pour stocker le mot "salut". je me doute de cases mémoires que je devrais allouer.
5 cases mémoires pour les lettres composants le mot "salut" ou 5 cases mémoires + le caractère nul '\0' qui marque la fin d'une chaîne de caractères dans la mémoire.
une dernière chose:
lorsqu'on définit 2 pointeurs de type char:
char *chaine1 et char *chaine2
et on alloue de la mémoire pour chacun d'eux à l'aide de la fonction malloc, 50 octets pour chacun. on remplit chaine2 à moitié (25 octets utilisés seulement). lorsqu'on copie chaine2 dans chaine1 avec la fonction strcpy. est ce que seulement 25 octets est copié ou toute l'espace allouée (50 octets). est ce qu'il est préférable de se servir du caractère nul '\0' dans chaine2 pour marquer la fin de la chaîne et pour déterminer la quantité d'octets qu'on veut copier dans chaine1 (25 octets + le caractère nul)
si quelqu'un peut nous aider à comprendre tous cela, soyez le bienvenu
merci beaucoup mes amis
cordialement,
Partager