簡體   English   中英

如何使用編譯器的命令行選項禁用易失性存儲類?

[英]How do I disable the volatile storage class using command-line options to the compiler?

有什么方法可以在gcc中編譯而不修改基礎源代碼時僅使用編譯器設置/標志來禁用易失性存儲類?

例如

volatile int x;
.. use x ..

需要像編寫的那樣進行編譯:

int x;
.. use x ..

編譯使用

gcc -Dvolatile="" ...

這樣預處理器將用空字符串替換每次出現的volatile 如果僅使用-Dvolatile ,則volatile將被替換為1,這將導致編譯錯誤。

因為volatile關鍵字告訴編譯器該值可能隨時更改,並且永遠不要緩存該值,因此從工作代碼中忽略它們可能會導致錯誤的出現(因為編譯器有時會使用過時的值)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM