Witam,
To mój pierwszy post na tym forum, a więc witam jeszcze raz;)
Napotkałem problem z pewnym zadaniem, mianowicie jego treść jest taka:
//Zdefiniuj strukturę student służącą do przechowywania danych osobowych
studenta (struktura powinna zawierać takie pola, jak: imie,
nazwisko, adres, pesel, kierunek i numer legitymacji).
Napisz funkcję, która otrzymuje jako argument wskaźnik na strukturę
student i wczytuje dane ze standardowego wejścia do rekordu
wskazywanego przez argument funkcji.//
mój kod wygląda tak: (to dopiero początek, bo się zaciąłem)
#include<stdio.h>
#include<stdlib.h>
struct student{
char *imie, *nazwisko, *pesel, *kierunek, *nl;
};
void funk(struct student *s){
s->imie = malloc(sizeof(char)*100);
scanf("%s", s->imie);
printf("%s", s->imie);
}
int main(){
struct student s;
funk(&s);
return 0;
}
Nie wiem jak zrobić coś takiego, żeby rozmiar pola struktury był odpowiednio allokowany do ilości podanych znaków. Nie bardzo też wiem o co chodzi z fragmentem polecenia "do rekordu wskazywanego przez argument funkcji."