void PrintTree(node * p, std::string b)
{
if(!p->left) std::cout << p->ch << " " << b << std::endl;
else
{
PrintTree(p->left, b + "0");
PrintTree(p->right,b + "1");
}
}
Mam taki kod w C++, ale jak go przerobić do C jak nie ma tam klasy string?
Coś takiego spróbowałem ale nie działa tak jak powinno:
void PrintTree(node * p, char b[8])
{
if(!p->left)
printf("%c %s\n", p->ch, b);
else
{
char b0_copy[8]="";
char b1_copy[8]="";
strcpy(b0_copy, b);
strcat(b0_copy, "0");
strcpy(b1_copy, b);
strcat(b1_copy, "1");
PrintTree(p->left, b0_copy);
PrintTree(p->right,b1_copy);
}
}