Witam
Próbuję zwalczyć kawałek kodu i nie mogę poradzić sobie ze wskaźnikami. Kilka poprawek umożliwiło mi odpalenie programu (kompilator pozwala włączyć), ale i tak to nie działa.
void AddCBAtEnd(CharBag** CB, int *len, char what);
void printCharBagTable(CharBag **CB, int *len);
CharBag* init(char z, int *len);
int main(void)
{
int *len = NULL;
int new_int;
char new_char;
CharBag **kolejka = NULL;
*kolejka = init('t', len); //BŁĄD
do
{
scanf_s("%d", &new_int);
scanf_s("%c", &new_char);
if (-1 == new_int) { break; }
AddCBAtEnd(kolejka, len, new_char);
} while (-1 != new_int);
*len = 1;
printCharBagTable(kolejka, len); //BŁĄD
system("PAUSE");
return 0;
}
CharBag* init(char z, int *len)
{
CharBag *ptemp;
ptemp = (CharBag*)malloc(sizeof(CharBag));
ptemp->c = z;
ptemp->code = (int)z;
ptemp->counter = 1;
*len = 1;
return ptemp;
}
CharBag to struktura zawierające trzy pola ((char)c, (int)code, i (int)counter). Program ma jeszcze kolejne funkcje i jeśli okażą się przydatne to mogę je dorzucić, ale sądzę, że jeśli ogarnę ten kawałek to poradzę sobie z resztą. Komentarzem oznaczyłem linie, gdzie się buntuje.
EDIT: Zależy mi, żeby było to wykonane przez podwójne wskaźniki do struktury.
Byłbym bardzo wdzięczny za pomoc.
Pozdrawiam
Piotrek