Dobrý den,
Zde je program který má vypočítat délku řetězce zadaného uživatelem. Ale pokaždé mi to vypíše 0 znaků. Nevím proč.
#include <stdio.h>
#define A 100 //velikost pole pro retezce
#define B 0 //pro cyklus
int vratDelku(char r[]);
int main()
{
do{
char retezec[A];
printf("Zadejte retezec do %d znaku: ", A);
gets(retezec);
printf("Velikost retezce je %d znaku.\n", vratDelku(retezec));
}while (B == 0);
//vyprazdneni bufferu
while(getchar() != '\n');
getchar();
return 0;
}
//vratDelku: vraci delku retezce predaneho argumentem
int vratDelku(char r[])
{
int delka;
for (int i = 0; i <= A; ++i){
if (r[i] == '\0'){
delka = 0;
return 0;
}
else
delka = i;
}
return delka;
}