J'essaie d'analyser une chaîne ascii en utilisant sscanf. La chaîne ressemble à ceci :
"Param1","Param2","","Param4"
Le problème est qu'il pourrait y avoir un Param3 mais que ce n'est pas garanti. Je ne suis pas non plus intéressé par le Param3 mais je dois le prévoir au cas où il serait présent.
J'analyse les paramètres de la manière suivante :
char ParamStr[] = "\"Param1\",\"Param2\",\"\",\"Param4\"";
char Param1[10];
char Param2[10];
char Param4[10];
sscanf(ParamStr, "\"%[^\"]\", \"%[^\"]\", \"%*[^\"]\", \"%[^\"]\"", Param1, Param2, Param4);
Mais lorsque j'analyse le paramètre 3, j'obtiens des résultats incorrects pour le paramètre 4.
Quelle est la manière correcte de traiter un paramètre comme Param3 qui est "dynamique" ?