blob: c055caf668c7c0efe844978b536cac74c0a89209 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
|
#include <stdio.h>
typedef struct Tree_struct {
int data;
struct Tree_struct *left, *right;
} Tree;
static Tree T1, T2, T3, T4, T5;
static Tree *Root, *ANode;
static int N = 4107;
/* forces *Tb->right to be collapsed */
void makeMore(Tree* Ta, Tree* Tb)
{
Ta->left = &T1;
Ta->right = &T2;
Tb->left = &T4;
Tb->right = (Tree*) (((char*) &T5) + 5); /* point to fifth byte of T5 */
}
void makeRoots()
{
T1.left = &T2;
makeMore(&T1, &T3);
}
int main()
{
makeRoots();
T3.right = &T4;
printf("T3.data = %d\n", T3.data);
}
|