Named Constants
The complete format for defining a named constant is:
CONST [type[*cexpr]] identifier [ '[' [ cexpr ] ']' ] '=' { cexpr | '{' cexpr1[',' cexpr2...]'}' | '"'...'"'} [ ',' identifier2...]
CONST
CONST denotes the beginning of a constant definition clause.
type[*cexpr]
Defines the type of the constant. If none is given, the constant becomes universal type which is 32 bit signed.
'[' [ cexpr ] ']'
Defines a constant array (see array variable types). A constant array will not take any space unless it is indexed at least once with a non-constant subscript. On the PIC, constant arrays consume *code* space, not *data* space.
If cexpr is ommitted, the size of the array will be determined by the number of initializers used.
'=' cexpr
For non-array constants this assigns the value to the constant.
'=' '{' cexpr[',' cexpr2...] '}'
For arrays of constants this assigns the value to each element. There must be the same number of cexprs as there are elements defined.
'=' '"' ... '"'
For an array of constants, this assigns each ASCII value between '"' and '"' to one element of the constant array. Unlike C, there is no terminating NUL.
Parent topic: Constants