Skip to main content

Cheat-Sheet

Introduction

Le langage C est un langage de bas niveau qui doit être compilé avant d'être exécuté.

Variables

Déclaration

    Entier :
    #include <stdio.h>
    
    // Mémo de tous les cours
    
    int main(void){
    
        // Déclaration et affectation d'un entier
        int my_first_variablemyInteger = 0;
      Flottant :
      float second_varmyFloat = 26.34;
      signed
      • Caractère :
      char n = 65;
          signed char lmyChar = 'J';
      // NormeAvec le code ASCII (caractère 'A')
      char myChar = 65;
        Constante (en majuscule) : Mettre les constante en MAJUSCULE
        const float PI = 3.14;
        n

        Bibliothèques

        =
        56;Standard //: Afficher que
        #include la<stdlib.h>
        partie
        entièreStandard Input/Output :
        #include <stdio.h>
          String (cast) int entier = (int)second_var; /* Les flags (qui sont remplacés parpour les variableschaînes ende argument dans l'ordre) %dcaractères : int %f
          #include <string.h>

          Assert (pour les vérifications) :

          float
          #include (%.2f<assert.h>
          pour

          Fonctions

          2

          En nombresC, on distingue le prototype d'une fonction de son implémentation. Le prototype n'est pas indispensable mais utile lorsqu'on souhaite implémenter les fonctions après la virgule)fonction %cmain par exemple.

          Prototypage :

          char
          float %scalculator(float op1, float op2);

          Implémentation :

          string
          float */calculator(float printf("%d\n",op1, entier);float // Afficher plusieurs variables
              printf("Variable 1 : %.1f | Variable 2 : %c\n", second_var, l);
          
              // Afficher PI
              printf("Valeur de Pi : %.2f", PI);
              
              int age_user = 0;
              printf("Quel âge avez-vous ? \n");
              scanf("%d", &age_user);
              printf("Vous avez %d ans !\n", age_user);
          
              // Demander une valeur à l'utilisateur (marche seulement lorsque que le code est compilé)
              scanf("%d", &input);
          
              // Incrémentation
              int niveau = 2;
              niveau += 6;
              niveau++;
          
              printf("Niveau => %d\n", niveau); */
          
              // If
              int niveau = 18;
              if (niveau < 5 || niveau == 18) 
              op2){
                  printf("Yop");
              } 
              else 
              {
                  printf("Hoho");
              }
          
              // Switch
              int age = 18;
              switch(age)
              {
                  case 18:
                      printf("Tu as la majorité !");
                      break;
                  case 100:
                      printf("Tu es centenaire !");
                      break;
                  default:
                      break;
              }
          
              // Ternaire
              int age = 16;
              (age == 15) ? printf("tu as 15 ans") : printf("Interdit pour toi");
              
              // Boucle While
              int i = 0;
              while (i<10){
                  printf("Waou !\n");
                  i++;
              }
          
              // Boucle For
              // 1 : Init compteur
              // 2 : Condition
              // 3 : Chose à faire (souvent incrémentation)
              int i;
              for (i = 0 ; i<5 ; i++){
                  printf("Ce message est affiché 5 fois\n");
              }
              return 0;op1 //+ Prototypeop2;
          pour}
          pouvoir

          Main

          mettre

          Tout programme en langage C présente la fonction après le main sans problèmes (sans modularité) int first_function(int valeur1); void lol(int valeur2); // Mot clé qui vasera définirnaturellement queexécutée laen variablepremière. neIl seran'est pas écrasé à la finnécessaire de la fonction static int ma_variable_statique = 2; // Il rend aussi les fonctions utilisables que dans le fichier dans lequel elle appartient static char ma_fonction_statique(void){ return 0; // Va remplacer les mots LONGUEUR du code par 15 à l'étape du préprocesseur (avant compilation) #define LONGUEUR 15 /* Constantes prédéfinies du langage Cappeler :

          __FILE__ (nom du fichier source) __LINE__ (ligne du fichier) __DATE__ (date de compilation) __TIME__ (heure de compilation) */ // Déclaration d'un pointeur int *pt_nb1 = &nb1; int *pt_nb2 = &nb2; } // Déclaration chaîne de caractères char name[256]; printf("Donne moi ton nom, tu auras un bonbon :\n"); scanf("%s", &name); // Changer le contenu d'une chaîne (dst puis src) strcpy(old_prenom, new_prenom) // Renvoie la longueur d'une chaîne strlen(chaine) // Compare deux chaînes (renvoie 0 si les chaînes sont identiques sinon renvoie l'écart dans entre les deux lettres dans l'alphabet) strcmp(mot1, mot2) // Concaténer deux chaînes printf("%s\n", strcat(mot1, mot2)); // Il va chercher le mot dans la phrase char phrase[] = "Salut les amis"; char mot[] = "am"; if (strstr(phrase, mot) != NULL) printf("Trouvé !\n"); // Retourne les caractères qu'il y a après le caractère de coupure char texte[] = "Ceci est-il un problème ?"; char c = '-'; char *resultat = strchr(texte, c); printf("%s\n", resultat); } // Mémo pointeurs
          int main(){
          
          void}
          exchange(float

          Commentaires

          *nombreA,

          Cast float(transtypage)

          *nombreB)
          {Passer floatd'un tmpflottant à un entier :
          int myInteger = *nombreB;
                  *nombreB = *nombreA;
                  *nombreA = tmp;
              }
          
              float nombreA = 6.8;
              float nombreB = 9.45;
          
              printf("A = %.2f | B = %.2f\n", nombreA, nombreB);
              exchange(&nombreA, &nombreB);
              printf("A = %.2f | B = %.2f", nombreA, nombreB);
              return 0;
          }(int)myFloat;

          Les flags