コード例 #1
0
ファイル: rbtree.c プロジェクト: jpcoles/ZM
static void docount( RB_NODE *node, size_t *piSize ) {
    if ( node != NULL ) {
	(*piSize)++;
	docount(node->link[0],piSize);
	docount(node->link[1],piSize);
	}
    }
コード例 #2
0
ファイル: mapper.c プロジェクト: Solomoriah/WAR
int generation()
{
	int i, j, trans;
	char old;

	trans = 0;

	for(i = 0; i < maprows; i++)
		for(j = 0; j < mapcols; j++)
			switch(map[i][j]) {

			case '~' :
/*
				old = map[i][j];
				if(lo3r(15) == 0)
					map[i][j] = terrain[lo3r(5)];
				if(old != map[i][j])
					trans++;
*/
				break;

			default :
				old = map[i][j];
				mapb[i][j] = terrain[docount(i, j, 1)];
				if(old != mapb[i][j])
					trans++;
				break;
			}


	for(i = 0; i < maprows; i++)
		for(j = 0; j < mapcols; j++)
			map[i][j] = mapb[i][j];

	return trans;
}
コード例 #3
0
ファイル: rbtree.c プロジェクト: jpcoles/ZM
size_t rb_size( RB_TREE *root ) {
    size_t iSize = 0;
    docount(*root,&iSize);
    return iSize;
    }