Salut,
Je rencontre quelques problemes pour convertir un char que je recois dans un thread en int.
Situation :
- Dans une structure que je transmet en réseau je met le nombre de niveaux que l'utilisateur veut. Je le met dans un char[3] car le type int est fortement déconseillé pour une structure qui se ballade en réseau.
- Ensuite je cree un thread dans lequel j'envoie juste ce char. Dans le thread vu qu'on est obligé de recevoir un void * je le converti une premiere fois.
- Enfin je souhaite le convertir en int pour m'en servir dans une boucle.
Seulement, sur certains PC ca marche, sur d'autres pas !!!!!
J'ai trouvé l'erreur il s'agit de la conversion de mon sscanf.
Voici le code :
Principal :
Thread:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 strcpy(PartieHebergee.NbNiveaux, NbNiveaux); // Copie du nombre dans la structure hdlThreadGenerLab = CreateThread(NULL, 0, CreerNiveaux, &NbNiveaux, 0, NULL); // Creation du thread
Merci pour votre aide!!!
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 DWORD WINAPI CreerNiveaux(void * thNiv) { char *NbNiveaux = thNiv; BOOL ResultatCreation; int i, NombreNiveaux; sscanf(NbNiveaux, "%d", &NombreNiveaux); for(i=0;i<NombreNiveaux;i++) {[etc.....]
Partager