Wpis z mikrobloga

#programowanie #c

Jest taka sytuacja:

char *fileName;

do
{
printf("Podaj nazwe pliku: ");
int chars = getline(&fileName, &len, stdin);
}
while(costam);

[...]

struct stat st = {0};

Problem polega na tym, że w momencie deklaracji struktury stat (ostatnia linijka) czyści mi się zawartość fileName (widzę to w debuggerze). Nie do końca rozumiem co tu się dzieje, stawiam że getline nie alokuje pamięci ale pisze "jak leci" pod adres fileName. Ma ktoś pomysł jak to rozwiązać żeby nie limitować wielkosci fileName dekalarując stałą wielkość dla tablicy char[] i jednocześnie ochronić przed nadpisaniem podbrany z stdin tekst?
  • 7