Problem z wyswietleniem listy

0

Witam. Piszę program "książkę telefoniczną" i mam problem z listą. Jak wyszukuję konkretnej nazwy w strukturze to jeżeli w którejś strukturze nazwa występuje to dostaję jej wskaźnik. Chcę wtedy tę strukturę wyświetlić. Niestety prawidłowo jest wyświetlane tylko pole "Imię i nazwisko"; "adres" i "nr telefonu" są przedstawione jako krzaczki :(
Program mam do napisania na jutro, myślałem że to będzie łatwa robota i zacząłem dopiero dziś, szukałem błędu i nie widzę żadnego. Może wy coś zauważycie?
Kod do WindowsApplication w pliku tekstowym:

0

Pobieżnie przejrzałem kod - gdzie alokujesz pamieć do przechowywania ciągów: "nazwa" i "adres"?

0

W którym miejscu? Bo we wszystkich funkcjach występuje taka nazwa.

0

Zmieniłem troszkę kod i nie wyszukuję po imieniu i nazwisku tylko wyświetlam wszystkie pozycje w jednym polu tekstowym.
Zobaczcie ten kod, skompilujcie i uruchomcie, a następnie dodajcie jakiś wpis. Wyświetlą się krzaczki. Ale jak dodacie drugi wpis to wyświetlą wam się krzaczki jako drugi wpis i pierwszy wpis będzie wyświetlany prawidłowo. Według mnie coś nie tak mam z wyświetlaniem ostatniego elementu tablicy. Ale nie wiem co ;]
Tu jest funkcja odpowiedzialna za wyświetlanie w Edicie:

void pokazListe(){
struct element *tmp;
tmp=pierwszy;
char * Bufor = (LPSTR)GlobalAlloc(GPTR, 10000);
while(tmp!=NULL)
{
strcat(Bufor, "Numer Telefonu: ");
strcat(Bufor, tmp->numer);
strcat(Bufor, "\r\nImię i Nazwisko: ");
strcat(Bufor, tmp->nazwa);
strcat(Bufor, "\r\nAdres: ");
strcat(Bufor, tmp->adres);
strcat(Bufor, "\r\n\r\n");
tmp=tmp->nast;
}
strcat(Bufor, "\0");
SetWindowText(hS,Bufor);
}
 

A tutaj cały kod źródłowy

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