program wczytujący łańcuchy znaków

0

Program, który wczytuje łańcuchy znaków i dla każdego łańcucha zajmuje tylko tyle pamięci ile wymaga tego wczytany łańcuch.
Czy do napisania takiego programu wystarczy użyć funkcji malloc? ;)

1

Raczej chodzi o getline który za Ciebie rezerwuje pamięć:

int main()
{
    char *line = NULL; 
    size_t nbytes = 0;
    // Powyższe zmienne zostaną zaktualizowane po zaalokowaniu pamięci
 
    printf("Podaj ciag znakow: \n");
    int bytes_read = getline(&line, &nbytes, stdin);
    if(bytes_read == -1)
    {
        // Błąd
    }
    else
    {
        printf("%s", line); // Wypisz to co wpisał użytkownik.
    }
    free(line); // Zwolnij zarezerwowany obszar pamięci.
    return 0;
}

1 użytkowników online, w tym zalogowanych: 0, gości: 1