コード例 #1
0
ファイル: main.c プロジェクト: bsuir250502/lab4_prilutskiy
void TreeDel(tree *w)
	{
		if (!w) 
			return;
		TreeDel(w->left);
		TreeDel(w->right);		
		free(w);
		w = NULL;
	}
コード例 #2
0
ファイル: tree.cpp プロジェクト: ohhepicfail/qualifier
void TreeDel (Node_t ** node)
{
    assert (node);
    assert (*node);

    if ((*node)->left)
        TreeDel (&(*node)->left);
    if ((*node)->right)
        TreeDel (&(*node)->right);

    free ((*node)->data);
    (*node)->data = NULL;
    free (*node);
    *node = NULL;
}
コード例 #3
0
ファイル: tree.cpp プロジェクト: ohhepicfail/qualifier
int main ()
{
    SetConsoleOutputCP(1251);
    SetConsoleCP(1251);
    const char dumpFilename[] = "dump";
    const char saveFilename[] = "save";

//    Node_t * nd = newNode ("aha",  newNode ("столовка", NULL, newNode ("ops", NULL, NULL)), NULL);
    Node_t * nd = TreeLoad (saveFilename);

    QUIZ (nd);

//    TreePrint  (nd, stdout);

    TreeDump (nd, dumpFilename);

    FILE * out = fopen (saveFilename, "w");
    assert (out);
    TreePrint (nd, out);
    fclose (out);

    TreeDel (&nd);

    return 0;

}
コード例 #4
0
ファイル: main.c プロジェクト: bsuir250502/lab4_prilutskiy
int main(int argc, char * argv[])
{
	if (argc>1)
	{
		if (strcmp(argv[1],"-h")==0)
		{
			Help();
			return 0;
		}
		else 
		{
			puts("Error. Improper parameter.");
			return 0;
		}
	}
	tree *root;
	root = NULL;
	while (1)
	{
		puts("Options:\n1 - Create tree\n2 - Show tree\n3 - Count nodes on N level\n0 - Exit");
		int inp = -1;
		if (!GetInt(&inp))
			{
				puts("Input error. Try again");
				continue;
			}
		switch(inp)
		{
			case 1:
			root = CreateTree(root);
			break;
			case 2:
			ShowTree(root);
			break;
			case 3:
			CountNodes(root);
			break;
			case 0:
			TreeDel(root);
			return EXIT_SUCCESS;
			default:
			puts("Input error. Try again");
			break;			
		}
	}
	//TODO
}