Strtol

Technology
12 hours ago
8
4
2
Avatar
Author
Albert Flores

strtol je funkce programovacího jazyka C, která převádí celé číslo v řetězeci znaků na proměnnou typu long int. Název strtol znamená string to long. Funkce je implementována ve standardní knihovně jazyka C a deklarována v hlavičkovém souboru stdlib.h s následujícím prototypem.

long strtol(const char *restrict str, char **restrict end, int base);

Argument str ukazuje na řetězec reprezentovaný polem znaků, který obsahuje znakovou reprezentaci hodnoty znaménkového celého čísla. Řetězec musí být zakončen znakem '\0'. +more Argument base určuje základ číselné soustavy, která se má použít (od 2 do 36). Pokud je číslo větší než 10, znaky abecedy ('A' až 'Z') se v reprezentaci použijí jako číslice. Po konverzi je hodnota odkazující na end nastavena tak, aby ukazovala na znak, který následuje po posledním platném číselném znaku v řetězci. Dále je převedené číslo vráceno jako návratová hodnota funkce. Pokud řetězec neobsahuje platnou číselnou posloupnost, je vrácena nula (0) a globální proměnná errno je nastavena na hodnotu EINVAL.

Existují také obdoby této funkce strtoul, strtoll a strtoull, které analyzují a navracejí celé číslo typu unsigned long, long long a unsigned long long.

Standardy

Funkce strtol je částí ISO standardu knihovny jazyka C (C89, 1989). Funkce strtoll byla přidána jako část knihovny C99 (1999). +more Byla přidána ke standardu knihovny jazyka C jakožto dobře fungující náhrada pro již existující funkci atoi.

Reference

[url=http://opengroup. org/onlinepubs/007908775/xsh/strtol. +morehtml]strtol[/url] na OpenGroup. org * [url=https://web. archive. org/web/20100621052406/http://carolina. mff. cuni. cz/~trmac/blog/2005/strtol-usage-guide/]Návod k užití[/url].

5 min read
Share this post:
Like it 8

Leave a Comment

Please, enter your name.
Please, provide a valid email address.
Please, enter your comment.
Enjoy this post? Join Cesko.wiki
Don’t forget to share it
Top