Ograniczenie ilości przekazywanych parametrów?

0

Zapewne robię jakiś głupi błąd, ale mam nadzieję, że pomożecie mi to rozwiązać.
Mam taki kodzik:

void Wyswietl(char *Imie, char *Nazwisko, char *Telefon, char *Adres, char *Kod, char Miasto)
{
printf("*****************************\n");
printf("
\n");
printf("
%-25s \n", Nazwisko);
printf("
%-25s \n", Imie);
printf("
tel. %-20s \n", Telefon);
printf("
%-25s \n", Adres);
printf("
*\n");
printf("*****************************\n");
}

void Pobierz(char *Imie, char *Nazwisko, char *Telefon, char *Adres)
{
printf("Podaj imię\n");
scanf("%s", Imie);
printf("Podaj nazwisko\n");
scanf("%s", Nazwisko);
printf("Podaj nr telefonu\n");
scanf("%s", Telefon);
printf("Podaj adres\n");
scanf("%s", Adres);
}

int main(void)
{
char *Imie, *Nazwisko, *Telefon, *Adres, *Kod, *Miasto;

clrscr();
Pobierz(Imie, Nazwisko, Telefon, Adres);
Wyswietl(Imie, Nazwisko, Telefon, Adres, Kod, Miasto);
scanf("%s");
return 0;
}

I błędnie wyświetla mi dane. Zwykle zamiast nazwiska wyświetla Adres (ale bywa też inaczej). Co ciekawsze, jeżeli zmniejszę liczbę parametrów przekazywanych do funkcji Pobierz do 3 to wszystko działa.
Co takiego źle robię?

0

a gdzie dla tych wskaźników rezerwujesz pamięć ??? :
char *Imie, *Nazwisko, *Telefon, *Adres, *Kod, *Miasto;
??? [browar]

0

a gdzie dla tych wskaźników rezerwujesz pamięć ???

[wstyd] Głupszego błedu już zrobić nie mogłem. Dzięki.

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