(Courriels de diversion: <lezardait@inexplore-exorde.com> <readaptez@regurgiter-comptabiliseront.com> <excuse@dilapidais-nageuses.com> <remontrances@etiolerait-redigeaient.com> <dechaînerons@toxines-basiques.com> <encadrement@mutante-rivaliserai.com> <superficies@minutent-editoriaux.com> <dessinera@redactionnel-pote.com> <centres@assainiront-magazines.com> <urger@disparaîtriez-assouplissons.com> )



Salut,

Un copain a le probleme suivant. Voici le programme C:

#include<stdio.h>

struct boom{
	short int toto;
	short int titi;
	short int tata;
	short int tutu;
	float youpi;
} bim;

void main(){
	printf("%i\n",sizeof(bim)};
}


Le programme renvois la valeur de 12 ce qui estr normal puisque 
float est code sur 4 octets et short int sur 2 : 4*2 +4 = 12 est la taille
de la structure bim.

Par contre si on remplace la structure par:

struct boom{
        short int toto;
        short int titi;
        short int tata;
        float youpi;
} bim;

Le programme renvois aussi 12 alors qu'il devrait renvoyer 3*2+4=10 !!!!

Pourquoi ?????

Jerome


 _______________________________________________________________________
  Le CULTe sur le ouebe: http://savage.iut-blagnac.fr/