4.1.2 The Common C Interface
The Common C Interface (CCI) supplements the ANSI C Standard and makes it easier for programmers to achieve consistent outcomes on all Microchip devices when using any of the MPLAB XC C compilers.
It delivers the following improvements, all designed with portability in mind.
Refinement of the ANSI C Standard | The CCI documents specific behavior for some
code in which actions are implementation-defined behavior under the ANSI C
Standard. For example, the result of right-shifting a signed integer is fully
defined by the CCI. Note that many implementation-defined items that closely
couple with device characteristics, such as the size of an
int , are not defined by the CCI. |
Consistent syntax for non-standard extensions | The CCI non-standard extensions are mostly implemented using keywords with a uniform syntax. They replace keywords, macros and attributes that are the native compiler implementation. The interpretation of the keyword can differ across each compiler, and any arguments to the keywords can be device specific. |
Coding guidelines | The CCI can indicate advice on how code should be written so that it can be ported to other devices or compilers. While you may choose not to follow the advice, it will not conform to the CCI. |