Convertir une String en entier ( int) !

Bonjour,

barbudor:
les String étant une m...e je te conseille d'apprendre à t'en passer et de maitriser les tableau de charactères.

Je plussoie fortement !

barbudor:

rang=maString.toInt();

Méthode non documentée.

Méthode qui en plus porte mal son nom puisqu'elle retourne un long ...

jlpic:
rang= atoi(rangchaine);

c'est reparti ! Génial Arduino !!!

Question piège : comment fait tu la différence entre une erreur (en général -1) et un nombre converti avec atoi() ?
Réponse : tu ne peut pas !
Et quand on ne peut pas faire la différence entre une erreur et une valeur souvent cela signifie qu'on utilise une fonction déprécié voir dangereuse :wink:
(ou dans le cas de atoi() ... les deux ...)

Pour convertir un char* en int la meilleur solution est d'utiliser sscanf()

int var;
char str[30] = "42";
sscanf(str, "%d", &var);

sscanf() retourne le nombre de variables quelle a pu "lire", si cette valeur est différente du nombre d'arguments c'est qu'il y a une erreur.