Probleme de char* qui veut pas s'effacer
Salut, j'ai un petit soucis avec les chaînes de caractère en C, ça doit être tout con mais je bloque là-dessus...
En gros, j'ai ça (c'est pas mon code, juste du à peu près, juste pour montrer l'idée) :
Code:
1 2 3 4 5 6 7 8
| char buffer[1024];
int i = 0;
while(i < 2)
{
recvfrom(socket, buffer, sizeof(buffer), 0, (struct sockaddr *)&from, &fromlen);
printf("%s\n", buffer);
i++;
} |
la fonction recvfrom reçoit par socket (en udp) des messages, et le problème ce pose quand le premier message est plus grand que le second !
Exemple :
si j'envoie
"bonjour" puis
"salut"
je recevrais "salutur", apparemment la chaine précédente n'a pas été effacée.
Est-ce qu'il y aurait un moyen de la "vider" ?
Merci d'avance !