Tak sem se hnul dal a vyladuju uniky pameti valgrindem.
Potreboval jsem si napsat metodu, ktera mi overi, ze na konci retezce je ukoncovaci znak, je vubec napsana spravne? protoze mi to nejak nesedi:
void obsahuje_ukoncovaci_znak(char *p){
int delka = strlen(p);
if(strncmp(p+delka,"\0",1) == 0) printf("RETEZEC: %s obsahuje ukoncovaci znak\n\n",p);
else printf("RETEZEC: %s NEobsahuje!!! ukoncovaci znak\n\n",p);
}
nebo tato?void obsahuje_ukoncovaci_znak(char *p){
int delka = strlen(p);
if(p[delka] == '\0') printf("RETEZEC: %s obsahuje ukoncovaci znak\n\n",p);
else printf("RETEZEC: %s NEobsahuje!!! ukoncovaci znak\n\n",p);
}
Obe metody mi vraceji stejne vypisy, akorat mi valgrind porad na nekolika radkach pise, ze nekde ctu o 1 bajt mimo alokovany blok.Diky