atoi
Web

Que devez-vous savoir sur la fonction atoi en programmation ?

Le langage de programmation C renferme un nombre assez élevé de fonctions qui nous sont très utiles aujourd’hui. Grâce à elle, vous pouvez effectuer des actions dans n’importe quel programme. Une des fonctions les plus utilisées dans le langage C à connaître est la fonction atoi. Cette dernière faisant partie de la grande bibliothèque du langage C a pour rôle l’analyse des chaînes et la conversion de leur contenu en la valeur numérique de type int qui leur correspond. Découvrez dans cet article comment utiliser la fonction atoi pour la conversion d’une chaîne en valeur entière en C.

Comment fonctionne atoi pour une conversion ?

Tout d’abord, vous devez savoir que la syntaxe de la fonction atoi se présente comme suit : entieratoi(constcarboniser*str) ;. Vous devez également savoir que cette fonction n’accepte qu’un seul paramètre qui représente un pointeur vers la chaîne à convertir. La valeur donnée est une constante et la fonction ne modifie pas la chaîne d’origine. Grâce à la fonction la chaîne convertir est renvoyée dans son équivalent entier.

Fonctionnement de la fonction atoi

Pour bien jouer son rôle, la fonction atoi supprime l’ensemble des caractères d’espacement possible comme la fonction d’isspace. Cela se fait jusqu’à ce que la fonction atoi rencontre un caractère qui soit différent d’un espace.

Suite au premier espace non blanc, la fonction attribue un signe facultatif. Ce signe peut être soit positif soit négatif. Par la suite, toutes les valeurs possibles sont analysées en base de 10 jusqu’à ce qu’un caractère non numérique apparaît. Le caractère peut être à terminaison nulle. Pour finir, les valeurs sont interprétées dans le type entier qui leur correspond. Voici un exemple de l’explication sur le fonctionnement de la fonction atoi :

Lisez aussi cet article  Nos 4 astuces pour bien sélectionner son site de voyance

#contain

#contain

Int main () {

Int tu ;

Char str [100] ;

Printf (« Entrez un chiffre : «  ) ;

Fgets ( str , 100 , stdin ) ;

Tu = atoi (str) ;

Printf (« Tu es % d », tu) ;

Retourne 0 ;

}

La fonction présentée ci-dessus montre exactement comment il faut utiliser la fonction atoi en C. Avec ce programme, il est demandé à l’utilisateur de donner un nombre et de faire la lecture de la valeur avec stdin. Ensuite, tout le contenu est analysé en un entier grâce à la fonction atoi. Le résultat qui sera obtenu est donc :

Entrez un chiffre : 9

Tu es 9.

atoi

Est-ce que l’utilisation de la fonction atoi pose un problème ?

Selon certains programmeurs, l’utilisation de la fonction atoi pose un certain problème dont beaucoup ne rendent pas compte. Il s’agit de la détection d’erreurs dans un programme. En effet, il n’existe pas de moyen pour différencier une saisie utilisateur nulle et une saisie utilisateur erronée.

L’ensemble des fonctions comme atoi, atol ou encore atof n’ont pas été créées pour permettre la détection d’une saisie erronée. Par le passé peut-être que l’utilisation d’aloi ne posait aucun problème, mais pour de nombreux programmeurs aujourd’hui c’est une fonction à rejeter. Vu qu’avec l’utilisation d’atoi les erreurs ne s’affichent pas directement lors des tests, beaucoup de personnes mettront longtemps avant de se rendre compte du réel problème.

Pour contrer ce genre de chose, il est donc recommandé d’utiliser la fonction sscanf qui permet de faire la conversion d’une chaîne de caractère en une série de valeurs utilisable pour tout le reste du programme. Sscanf est certes plus compliqué à utiliser qu’athois, mais l’avantage qu’elle présente vaut bien la peine. Pour détecter une erreur avec cette fonction, vous allez simplement regarder si le nombre de valeurs extraites correspond au nombre de valeurs attendues.

Lisez aussi cet article  3 choses à savoir sur IPSec

Vous pourriez également aimer...

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *