Bonjour,
J'ai une sortie différente selon que je compile sous environnement 32 bits ou sous environnement 64 bits.
Soit la fonction suivante :
Le fichier créé porte le nom G500. J'y inscrit le numéro du PID et un numéro d'équipe.
Code : Sélectionner tout - Visualiser dans une fenêtre à part 
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
Sous 32 bits, la sortie est la suivante :
PID :7931 Equipe :22
Buffer : 7931 Sizeofbuffer : 5
Ecriture réussie sur le fichier /tmp/G500
$ cat /tmp/F0678
7931ubuntu@ubuntu~/Projet$
La compilation se passe sans erreur mais la taille du buffer ne permet pas d'écrire les 2 données. Seule la taille du PID est inscrite dans le fichier.
Sous 64 bits, la sortie est la suivante :
Buffer : 19624
22 Sizeofbuffer : 9
Ecriture réussie sur le fichier /tmp/F0255$ cat /tmp/F0255
19624
22ubuntu@ubuntu~/Projet$
La compilation génère cette erreur sur la ligne : snprintf (buffer...
attention : format ‘%d’ expects type ‘int’, but argument 3 has type ‘long unsigned int’
Merci pour vos contributions et votre regard éclairé.

 

 
		
		 
        

 
			
			


 
   


 Comportement étrange compilation 32/64 bits
 Comportement étrange compilation 32/64 bits
				 Répondre avec citation
  Répondre avec citation
Partager