Bonjour,

Je fais un programme pour un µC et j'ai besoin d'utiliser la fonction sprintf dont le prototype est :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
int sprintf (auto char *buf, auto const MEM_MODEL rom char *fmt, ...);
voici ce que j'aimerais faire :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
static char myBuf[100];
 
void maFonction_printf(auto const MEM_MODEL rom char *fmt, ...){
 
	sprintf(myBuf, fmt, ???);
 
	// autres commandes ...
}
Que dois-je mettre à la place des "???" ?

Comment est gérée la pile avec ce genre de fonction (nombre de paramêtres variables) ? est-ce qu'il y a des contrôles a faire pour ne pas "exploser" la pile ?
=> que se passe t-il si je mets trop de paramêtres ? j'aurais un risque de bug ou ma chaine sera tronquée ?

merci d'avance