how are the heap and stack addresses decided when you run a program in c++ code example Example: stack memory allocation c++ memory allocation