ZHCUAV8W january 1998 – march 2023 66AK2E05 , 66AK2H06 , 66AK2H12 , 66AK2H14 , AM1705 , AM1707 , AM1802 , AM1806 , AM1808 , AM1810 , AM5K2E04 , OMAP-L132 , OMAP-L137 , OMAP-L138 , SM470R1B1M-HT , TMS470R1A288 , TMS470R1A384 , TMS470R1A64 , TMS470R1B1M , TMS470R1B512 , TMS470R1B768
C/C++ 編譯器在所有模式下都支持 ANSI/ISO 標準關鍵字 const 除外。此關鍵字使您能夠更好地優(yōu)化和控制某些數據對象的分配。您可以將常量限定符應用于任何變量或數組的定義,以確保其值不被更改。
限定為 常量的全局對象放置在 .const 段中。鏈接器從 ROM 或閃存中分配 .const 段,它們通常比 RAM 更豐富。const 數據存儲分配規(guī)則有以下例外情況:
volatile const int x。假設將 Volatile 關鍵字分配給 RAM。(不允許程序修改 const volatile 對象,但可能會修改程序外部的內容。)在這些情況下,對象的存儲與未使用 const 關鍵字時相同。
const 關鍵字的位置很重要。例如,下面的第一條語句定義了指向可修改 int 的常量指針 p。第二條語句定義了指向常量 int 的可修改指針 q:
int * const p = &x;
const int * q = &x;使用 const 關鍵字,您可以定義大型常量表并將它們分配到系統(tǒng) ROM 中。例如,若要分配 ROM 表,可使用以下定義:
const int digits[] = {0,1,2,3,4,5,6,7,8,9};