devxlogo

The Volatile Storage Qualifier

The Volatile Storage Qualifier

The const qualifier guarantees that the value of an object cannot be changed directly by the program. However, it may be altered asynchronously–that is, by a way unknown to the compiler. For example, the current bit rate of a modem can be read directly from its port and stored in a const variable. However, it can have different values during the execution of the program, due to the varying line conditions. The compiler can mistakenly assume that the value is immutable and store it in a machine register as an optimization measure, rather than read it from the modem’s port. The volatile qualifier instructs the compiler to read the value of the variable from its source (in this case, the modem port) every time it is accessed, instead of storing it in a faster processor register. The generated code may be less efficient in this case, but it is correct.

devxblackblue

About Our Editorial Process

At DevX, we’re dedicated to tech entrepreneurship. Our team closely follows industry shifts, new products, AI breakthroughs, technology trends, and funding announcements. Articles undergo thorough editing to ensure accuracy and clarity, reflecting DevX’s style and supporting entrepreneurs in the tech sphere.

See our full editorial policy.

About Our Journalist