Bonjour,
Je fais un programme pour un µC et j'ai besoin d'utiliser la fonction sprintf dont le prototype est :
voici ce que j'aimerais faire :
Code : Sélectionner tout - Visualiser dans une fenêtre à part int sprintf (auto char *buf, auto const MEM_MODEL rom char *fmt, ...);
Que dois-je mettre à la place des "???" ?
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 ... }
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
Partager