In C++ the storage class specifier static allocates memory from the data area. What does ‘data area’ mean?
In C++ the storage class specifier static allocates memory from the data area. What
Share
Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.
Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.
Lost your password? Please enter your email address. You will receive a link and will create a new password via email.
Please briefly explain why you feel this question should be reported.
Please briefly explain why you feel this answer should be reported.
Please briefly explain why you feel this user should be reported.
In addition to what Konrad said, declaring a variable as static basically means that the memory for it gets allocated with the program as it is loaded, as opposed to on the heap or the stack. Historically, using only static variables in a critical applications meant that the memory footprint of the application would not change at run-time and hence it was less likely to fail due to resource limitations. Don’t know if this is still true of modern operating systems.
If you get your compiler to generate a mapfile as part of its output, you can have a look see at what is in all the various sections, including data.