Portál AbcLinuxu, 30. dubna 2025 23:09
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.