Outils pour utilisateurs

Outils du site


gcc_c99

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Prochaine révision
Révision précédente
gcc_c99 [2008/06/06 14:22] – créée thierrygcc_c99 [2009/11/30 14:23] (Version actuelle) thierry
Ligne 10: Ligne 10:
 Mais ce ne l'est plus depuis gcc > 3 ... Mais ce ne l'est plus depuis gcc > 3 ...
  
-Enfin, ca depend !+Enfin, ca depend
 +L'option est parfois nécessaire; le plus souvant, non. 
 + 
 +===== vite dit ===== 
 + 
 +==== inline ==== 
 + 
 +**''inline''** est reconnu pour "macrofier" une fonction. 
 + 
 +le **''static''** est le bienvenu dans les "include" 
 + 
 +  static inline int carre(int x) { return( x*x ); } 
 + 
 +==== long long ==== 
 +represente au moins 64 bits... 
 + 
 +accompagné des notations **''ll''** ou **''L''** 
 + 
 +==== __func__ ==== 
 +Le numéro de la ligne est en **''__LINE__''** , alors que le nom de la fonction est en: 
 +  __func__ 
 +Declarer, quelque part, comme cela: 
 +  static const char __func__[]; 
 + 
 +Exemple: 
 +  printf("la fonction courante: %s\n", __func__ ); 
  
 ===== tableau dynamique ===== ===== tableau dynamique =====
Ligne 35: Ligne 61:
   3 tableau de taille: 12   3 tableau de taille: 12
   ...   ...
 +===== structure =====
  
 +==== initialiser ====
 +On peut initialiser le contenu d'une structure comme ça:
 +  struct T
 +  {  
 +     int a;
 +     int b;
 +     int c;
 +  };
 +  struct T toto = { .b = 123, .c = 456 };
 +
 +Et sur la pile, c'est possible avec des valeurs non connus (non constante)...
 +==== tableau en fin ====
 +On peut faire:
 +  struct T
 +  {
 +     int len;
 +     char string[];
 +  };
 +"string" a une taille indefinie, mais commence a la fin de la structure.
 +
 +===== Chaines =====
 +
 +Pourquoi associé une chaine et une variable !?
 +
 +Voila que ça marche aussi comme cela:
 +  for( int i=0; ; i++ ) {
 +    // -----------------------------
 +    char c = "Hello Word!" [i];
 +    // -----------------------------
 +    if ( !c ) {
 +      printf("\n");
 +      break;
 +    }
 +    else printf("%c",c);
 +  }
 +Resultat:
 +  Hello Word!
 +bien sur...
gcc_c99.1212762148.txt.gz · Dernière modification : 2008/06/06 14:22 de thierry