The following table shows the size or number of each item that the compiler can process. All capacities shown in the table are tested values; the actual number can be greater than the number shown.
Item | Tested Values |
---|---|
Control structure nesting (block nesting) | 512 |
Conditional compilation nesting | 512 |
Declarator modifiers | 512 |
Parenthesis nesting levels | 512 |
Significant characters, internal identifier | 2048 |
External identifier name length | 64K |
Number of external identifiers/file | 128K |
Number of identifiers in a single block | 2048 |
Number of macros simultaneously defined | 128K |
Number of parameters to a function call | 512 |
Number of parameters per macro | 512 |
Number of characters in a string | 128K |
Bytes in an object | 512K |
Include file nesting depth | 512 |
Case labels in a switch | 32K |
Members in one structure or union | 32K |
Enumeration constants in one enumeration | 8192 |
Levels of structure nesting | 320 |
Size of arrays (IA-32 only) | 2 GB |