I have this task and i dont know how to do it, any help will be appreciated

I want to do it in C language under linux

Evaluate Boolean expression given by the user by using tree data structure. An example of the Boolean expression is ((X1 * X2 * X3) + (X2 * X4) + (X5))

Where * and + is not static, i mean they can be any operator.