Bonjour,

C'est quoi la différence entre les deux codes, et que ce que je peux gagner comme mémoire?

/**************code 1 ****************/
je déclare defaut de type tCodeDefaut

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
	typedef struct 
	{
		int  code;
		char description [255];
	} tCodeDefaut;
 
tCodeDefaut	defaut;
je passe l'adresse de defaut a la fonction de GenererCodeDefaut
Code : Sélectionner tout - Visualiser dans une fenêtre à part
GenererCodeDefaut (&defaut);
/**************code 2 ****************/
je déclare defaut de type pointeur sur tCodeDefaut

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
	typedef struct 
	{
		int  code;
		char description [255];
	} tCodeDefaut;
 
tCodeDefaut	*defaut;
je passe l'adresse de defaut a la fonction de GenererCodeDefaut
Code : Sélectionner tout - Visualiser dans une fenêtre à part
GenererCodeDefaut (defaut);
/**************************************/

Si le même chose, parce que j'ai lit dans des cours C avancé que passer à une fonction un variable de type structure sa prend beaucoup en RAM
par contre passer un pointeur sur structure va être charger dans le stack
et va être plus économique en mémoire

merci d'avance