program wczytujący łańcuchy znaków

program wczytujący łańcuchy znaków
MA
  • Rejestracja:ponad 7 lat
  • Ostatnio:ponad 6 lat
  • Postów:72
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? ;)

atmal
  • Rejestracja:około 8 lat
  • Ostatnio:10 dni
  • Postów:913
1

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

Kopiuj
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;
}

Failure of one test is a tragedy, failure of fifty is a statistic.

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.