
int functionA(int paramA){
   int localA;
}

int functionC(int paramC){
    int localC;
   funtionA(paramC + localC);
   return 44;
}

int functionB(int paramB){
   int localB;
}

// if localA and localB are stored on the static memory
// problem1: the functionA, functionB can be called 'in parallel' (recursion)
// problem2:  localA is stored in static memory for ALL duration of prgram
  //even is functionA() is never called
  // also if it is called, it uses memory for whole duration of program, while
  // it may last only very little


int main(){
 /*
  int value =1;
  // ask value to user
  if (value >0)  functionA(22);
  else functionB(33);
  functionA(33);
  functionB(22);
  */
  int value =22;
  int result ;
  result = functionC(value);

  localC is not available


}

