Portál AbcLinuxu, 10. prosince 2025 07:40
long int strtol(const char *str, char **endptr, int base)Proč vlastně?
const nedat, aspoň se vyhnete zbytečnému přetypovávání v případě, že potřebujete předat string, který už const je.
errno na nulu. V opačném případě je jakýkoliv další pokus o zjištění selhání (přetečení) naprosto zbytečná záležitost. U příbuzných unsigned variant (strtoul) bych zmínil, že klidně přijmou záporné číslo a "zkonvertují" ho na kladné (podle pravidla převodu signed na unsigned). Proto je dobré před voláním funkce zkontrolovat první nebílý znak, jestli není mínus.
man 3 strtol).
int usleep(useconds_t usec) z unistd.h?
NUMBERS n = {{0}, 0};
ale
numbers_t numbers;
// bzero(&numbers, sizeof(numbers_t)); /* keď nenastavuješ všetky prvy v štrukture pri inicializacií v programe */
numbers.array={0};
numbers.num=0;
A parametre funkcie nedefinuj ako typ void, ale ako long *. Nakoľko môžeš pri preklade dať skontrolovať typovú kontrolu. Čo pri void sa stratí.
int cmp(const void *p1, const void *p2).
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.