Strtol et Strtoul fonctionnent en c

Strtol et Strtoul fonctionnent en c

Dans le langage C, un fichier d'en-tête standard est présenté comme une «chaîne», nommée chaîne.Fichier d'en-tête H. Ce fichier d'en-tête exploite différents types de chaînes. Il existe différentes fonctions de chaîne prédéfinies standard disponibles dans ce fichier d'en-tête pour manipuler ces chaînes.

Il existe un autre fichier d'en-tête standard disponible en langue C appelée stdlib.Fichier d'en-tête H. Il existe deux fonctions prédéfinies standard disponibles: strtol () et strtoul () fonctions. Grâce à ces fonctions, nous convertissons les différents types de chaîne en nombre en entier long et numéro entier long non signé, respectivement.

Tout d'abord, nous verrons les caractéristiques et la mise en œuvre de la fonction strtol ().

Caractéristiques de la fonction strtol ()

En tête de fichier: La définition de la fonction strtol () existe dans un fichier d'en-tête standard dans la bibliothèque C nommée dans STDLIB.Fichier d'en-tête H. C'est une fonction prédéfinie standard.

Syntaxe:

long strtol (const char * size_str, char ** ptr_str, int bse_n);

Description: La fonction strtol () transforme une chaîne en une valeur entière longue. Cette fonction ne s'exécute pas lorsque la fonction n'a pas accédé à une entrée valide. Cette fonction détermine le point de terminaison auquel une valeur est attribuée à une variable. Le PTR_STR fait référence à cette variable si la valeur de PTR_STR n'est pas nul. Le paramètre BSE_N reflète la valeur de base. La valeur de base est utilisée comme 0 ou 2 à 36. Si le nombre commence par le bœuf, alors sa base est 16. S'il commence par un zéro, sa base est de 8; D'autres sont des décimales en base.

Paramètres:

size_str: C'est un pointeur vers une chaîne qui convertit la chaîne.

PTR_STR: Il fait référence à un pointeur. Ce pointeur maintient l'adresse d'un pointeur de chaîne.

BSE_N: La conversion des nombres dépend de la base d'un nombre. Le BSE_N stocke cette valeur.

Retour: La fonction strtol () donne une sortie en tant que valeur, qui est un type entier long.

Exemple de programmation 1

Ici, nous verrons comment la fonction strtol () convertit une chaîne en une valeur entière longue et la mise en œuvre de la fonction strtol ():

#inclure
#inclure
int main()

Char strr [60]; // déclarant une chaîne
char * s;
long v; // maintient la convertissage de la valeur entière longue
printf ("Veuillez entrer une valeur longue:");
obtient (strr);
v = strtol (strr, & s, 0); // appelle la fonction strtol () pour la conversion
printf ("La valeur résultante est:% ld, double la valeur:% ld \ n", v, v * 2);
retour 0;

Sortir

Explication

Ici, nous déclarons une chaîne nommée trèfle et attribuer certaines valeurs à l'utilisateur à l'aide de la fonction get (). Nous déclarons une chaîne de pointeur nommée * s Pour pointer la chaîne et une longue valeur entière.

Nous appelons la fonction strtol () et passons la chaîne, à travers le pointeur à l'intérieur de la parenthèse de la fonction strtol () pour convertir la chaîne en valeur entière longue. Maintenant, nous imprimons la valeur de V pour imprimer la sortie souhaitée.

Exemple de programmation 2

Ici, nous verrons un autre exemple de la fonction strtol ().

#inclure
#inclure
int main()

char strr [50] = "430 je suis ici"; // déclarant ainsi que l'initialisation d'une chaîne
char * s;
long v; // maintient la convertissage de la valeur entière longue
v = strtol (strr, & s, 10); // appelle la fonction strtol () pour la conversion
printf ("La valeur probable est% ld \ n", v);
retour 0;

Sortir

Explication

Dans cet exemple de programmation, nous déclarons une chaîne nommée strr [] et attribuons une valeur. Ensuite, nous appelons la fonction strtol () et, à l'intérieur de sa parenthèse, passons la chaîne et la chaîne au pointeur comme arguments. La valeur intrée longue est le retour de cette fonction comme sortie.

Strtoul () Fonction

Maintenant, nous allons discuter des caractéristiques et de l'application de la fonction strtoul ().

Caractéristiques de la fonction strtoul ()

En tête de fichier: La fonction strtoul () présente dans le stdlib.Fichier d'en-tête H.

Syntaxe: unsigned long int strtoul (const char * size_str, char ** ptr_str, int bse_n)

Description: Cette fonction aide à donner la sortie comme calcul de la conversion de n'importe quelle chaîne en une valeur qui est un type entier long non signé.

paramètres:

size_str: C'est un pointeur vers la chaîne.

PTR_STR: Il fait référence à un pointeur. Ce pointeur maintient l'adresse d'un pointeur de chaîne.

BSE_N: base du nombre à convertir.

Retour: il renvoie la valeur entière longue.

Exemple de programmation 3

Ici, nous verrons un exemple de la fonction Stroul ().

#inclure
#inclure
int main()

Long LV non signé; // déclarant une longue variable de type de données.
char szstring [50] = "430 Je suis ici"; // déclarer ainsi que l'initialisation d'une chaîne
char * pennd;
long V; // maintient la convertissage de la valeur entière longue
lv = strtoul (szstring, & pend, 0); // appelle la fonction strtoul () pour la conversion
printf ("La valeur probable est% ld \ n", lv);
retour 0;

Sortir

Explication

Ici, nous déclarons une chaîne nommée SzString [] et attribuons certaines valeurs à l'intérieur de la chaîne. Maintenant, nous appelons la fonction strtoul () et passons quelques arguments comme la chaîne, le pointeur de caractère à l'intérieur de sa parenthèse pour la conversion. Cette fonction renvoie la valeur entière longue comme sa sortie et affiche dans le moniteur

Conclusion

Ici, nous avons discuté des caractéristiques des fonctions strtol () et strtoul (). Ces deux fonctions nous aident à convertir la chaîne en valeur entière longue, respectivement. Ces fonctions sont extrêmement utiles pour convertir le fonctionnement des chaînes dans le langage C. Ces fonctions offrent des options différentes au langage C dans les opérations numériques.