| Moteur de recherche de fiches techniques de composants électroniques |
|
AN3350 Fiches technique(PDF) 98 Page - STMicroelectronics |
|
|
|||||||||||||||||||||||||||||
AN3350 Fiches technique(HTML) 98 Page - STMicroelectronics |
|
98 / 185 page ![]() C compiler AN3350 98/185 Doc ID 018512 Rev 2 12.3.2 Initializing automatic arrays and structures When the GCC extensions setting is on, array and structure variables that are local to a function and have the automatic storage class may be initialized with values that do not need to be constant. Example 38 shows an example. Example 38 Initializing arrays and structures with non-constant values void f(int i) { int j = i * 10; /* Always OK. */ /* These initializations are only accepted when GCC extensions * are on. */ struct { int x, y; } s = { i + 1, i + 2 }; int a[2] = { i, i + 2 }; } 12.3.3 The sizeof() operator When the GCC extensions setting is on, the sizeof() operator computes the size of function and void types. In both cases, the sizeof() operator evaluates to 1. The ISO/IEC 9899-1990 C Standard (“C90”) does not specify the size of the void type and functions. Example 39 shows an example. Example 39 Using the sizeof() operator with void and function types int f(int a) { return a * 10; } void g(void) { size_t voidsize = sizeof(void); /* voidsize contains 1 */ size_t funcsize = sizeof(f); /* funcsize contains 1 */ } 12.3.4 Statements in expressions When the GCC extensions setting is on, expressions in function bodies may contain statements and definitions. To use a statement or declaration in an expression, enclose it within braces. The last item in the brace-enclosed expression gives the expression its value. Example 40 shows an example. Example 40 Using statements and definitions in expressions Table 16. Controlling GCC extensions to the C language To control this option from here... use this setting Source code #pragma gcc_extensions Command line -gcc_extensions |
|
Lien URL |
| ALLDATASHEET vous a-t-il été utile ? [ DONATE ] |
À propos de Alldatasheet | Publicité | Contactez-nous | Politique de confidentialité | Lien vers la fiche technique | Echange de liens | Fabricants All Rights Reserved©Alldatasheet.com |
| Russian : Alldatasheetru.com | Korean : Alldatasheet.co.kr | Spanish : Alldatasheet.es | French : Alldatasheet.fr | Italian : Alldatasheetit.com Portuguese : Alldatasheetpt.com | Polish : Alldatasheet.pl | Vietnamese : Alldatasheet.vn Indian : Alldatasheet.in | Mexican : Alldatasheet.com.mx | British : Alldatasheet.co.uk | New Zealand : Alldatasheet.co.nz |
|
Family Site : ic2ic.com |
icmetro.com |