본문 바로가기
소프트웨어

Volatile 을 사용하는 이유

by 얼그레이_티 2023. 4. 25.
728x90
반응형

 

안녕하세요, 오늘은 C언어에서 Volite을 사용하는 이유에 대해 알아보겠습니다.

 

 

C언어의 'volatile' 키워드는 컴파일러의 최적화 최적화를 방지하고 변수가 항상 메모리에서 읽혀지도록 보장하는 데 사용됩니다.

일반적으로 C언어에서 변수는 메모리에서 읽어들여 레지스터에 저장됩니다. 이는 프로그램의 속도를 빠르게 하지만, 변수가 변경되는 시점을 알 수 없게 됩니다. 이 때문에 하드웨어와 관련된 변수의 경우, 메모리에 바로 접근해야 합니다.

'volatile' 키워드는 이와 같은 경우에 사용됩니다. 'volatile'로 선언된 변수는 항상 메모리에서 읽혀지고, 최적화를 방지하기 때문에 값이 언제든지 바뀔 수 있음을 보장합니다.

예를 들어, 다음과 같이 'volatile' 키워드를 사용하여 변수를 선언할 수 있습니다.

 

 

이렇게 하면 컴파일러는 'count' 변수를 레지스터에 저장하지 않고, 항상 메모리에서 읽어들이게 됩니다. 따라서 'count' 변수의 값이 언제든지 바뀔 수 있다는 것을 보장합니다.


이상으로 오늘의 포스팅을 마칩니다. 감사합니다.

 

728x90

댓글