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

Čo znamená tá podmienka "if(strlen(nacteno) == 1)"? Dúfam, že znak '\0' nepočítaš do dĺžky reťazca.

Prečo potrebuješ skrátiť hodnotu v nacteno o jeden znak? (nacteno[strlen(nacteno)-1] = '\0';)

Keď už toľko pracuješ s hodnotou strlen(nacteno), bolo by celkom dobré si ju uložiť do premennej.

Toto je blbosť:

strncpy(radka, nacteno, strlen(nacteno));
To by si už rovno mohol použiť strcpy. Keď alokuješ presne toľko miesta, koľko ideš kopírovať, tak nemá zmysel použiť strncpy. Alebo pre istotu tam dať tú MAX_DELKA_VSTUPU (predpokladám, že pre premennú nacteno máš alokovaných toľko bajtov).

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