Witam, mam nastepujacy kod:
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
#include <time.h>
struct element {
char imie_nazwisko[50];
char plec[9];
int wiek;
struct element *next;
};
struct element * wstaw(struct element * l, char in, char p, int w);
void wypisz(struct element * l);
int main(void) {
char in[50];
char p[9];
int w = 0;
struct element * lista = NULL;
printf("\nPodaj imie i nazwisko: ");
fflush(stdin);
scanf("%s", in);
printf("\nPodaj plec: ");
fflush(stdin);
scanf("%s", p);
printf("\nPodaj wiek: ");
fflush(stdin);
scanf("%i", &w);
lista = wstaw(lista, in, p, w);
wypisz(lista);
system("pause");
return 0;
}
struct element * wstaw(struct element * l, char in, char p, int w) {
struct element * nowy;
nowy = (struct element *) malloc(sizeof(struct element));
if(nowy == NULL) {
printf("\n\n\n!BLAD!\n\n\n");//BLAD
}
(*nowy).imie_nazwisko = in;
(*nowy).plec = p;
(*nowy).wiek = w;
(*nowy).next = l;
return nowy;
}
void wypisz(struct element * l) {
struct element * wsk = l;
printf("Dane osob: \n\n");
while (wsk != NULL) {
printf("Imie i nazwisko: %c \n", (*wsk).imie_nazwisko);
printf("Plec: %c \n", (*wsk).plec);
printf("Wiek: %i \n\n", (*wsk).wiek);
wsk = (*wsk).next;
}
}
niestety przy kompilacji mi wyskakuje blad, czy ktos jest mi w stanie poradzic jak go naprawic?
Blad to:
-sciezka do pliku- In function int main()': 30 -sciezka do pliku- invalid conversion from
char*' to char' 30 -sciezka do pliku- initializing argument 2 of
element* wstaw(element*, char, char, int)'
30 -sciezka do pliku- invalid conversion from char*' to
char'
30 -sciezka do pliku- initializing argument 3 of element* wstaw(element*, char, char, int)' -sciezka do pliku-
element* wstaw(element*, char, char, int)':
45 -sciezka do pliku- incompatible types in assignment of char' to
char[50]'
46 -sciezka do pliku- incompatible types in assignment of char' to
char[9]'
bardzo prosze o pomoc, jeszcze duzo pisania przede mna i mysle, ze z reszta sobie poradze, jednak najpierw musze rozwiazac ten problem na poczatku...
prosze o szybka odpowiedz.