problème de débutant [résolu] - C - Programmation
Marsh Posté le 07-05-2009 à 22:46:27
Ouais, je dirais que ton erreur vient du fait que tu tentes de modifier une chaine statique. Sur un x86, tu auras un segfault direct.
D'un autre coté, si tu veux juste récupérer le premier entier (ou éventuellement le second), utilise un code du genre :
Code :
|
Voilà, pas besoin de modifier la chaine. Ça présuppose que le libc fourni avec le microcontrolleur soit pas trop pourrie quand même.
Marsh Posté le 07-05-2009 à 22:06:53
bonjour, quelq'un peut me dire ce qui ne va pas dans le code suivant :
char * value = NULL;
char * action ="150=2";
int actionId,i,t=0;
i = strcspn (action,"=" );
value = &action[i+1];
action[i]='\0';
actionId = sscanf( action, "%u", &t);
j'arrive bien a récupérer le 2eme membre dans un pointeur, mais dès que je veux transformer le deuxième membre (qui est aussi un pointeur, valide apparement) en int, ca plante.
je ne peux pas vous donner de message d'erreur vu que c'est sur un micro controleur, par contre le prog compile sans erreur
merci.
++
Message édité par t0t0l le 08-05-2009 à 00:01:03