Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailem dynamicka alokace C, retezce

Ani jedna metóda nie je správne, pretože obidve sú zbytočné. Funkcia strlen určí dĺžku reťazca práve podľa ukončovacieho znaku, takže nemá zmysel testovať, či je na konci reťazca ukončovací znak, pretože tam bude vždy.

Môžeš použiť funkciu strnlen, potom by mala kontrola ukončovacieho znaku aký-taký zmysel. Efektívnejší spôsob by bol potom ten druhý, pretože tam priamo porovnávaš znak namiesto ďalšieho volania funkcie. V tom prvom spôsobe bije do očí ten reťazec "\0", tam stačí predsa prázdny reťazec.

Normálne sa to ale robí tak, že ten ukončovací znak zapíšeš na posledné miesto vyhradenej pamäte a takéto veci potom nemusíš riešiť.

Reakce na odpověď

1 Zadajte svou přezdívku:
2 Napište svou odpověď:
3 Pokud chcete dostat ban, zadejte libovolný text:

Zpět do poradny