Rappels C. Introduction Gestion de la mémoire Langages de programmation

Preview:

Citation preview

Rappels C

Introduction Gestion de la mémoire

Langages de programmation

Introduction

Présentation du langage C

Un exemple simple Le Hello World

#include <stdio.h> int main(void) {

printf("hello, world\n");return 0;

}

Le langage C Les fichiers en tête

#include <stdio.h> int main(void) {

printf("hello, world\n");return 0;

}

Header

Le langage C Les fichiers C

#include <stdio.h> int main(void) {

printf("hello, world\n");return 0;

}

HelloWorld.c

Des sources à l’executable

Préprocesseur

Des sources à l’executable Directives du préprocesseur

#include <stdio.h> int main(void) {

printf("hello, world\n");return 0;

}

Preprocess

Des sources à l’executable

Directives du préprocesseur #include

#define

Des sources à l’executable

Compilation

Des sources à l’executable

Liens

Syntaxe Les fichiers en tête

#include <stdio.h> int main(void) {

printf("hello, world\n");return 0;

}

Elements de syntaxe

Types et variables Types entiers : char

char toto = ‘c’; Types entiers : short, unsigned short

short court = 12; Types entiers : int, unsigned int.

int moinsCourt = 24; Types entiers : long, unsigned long.

long plusLong = 36; Types à virgule flottante : float, double

float aVirgule = 24,36;

Types et variables Types énumérés : enum

enum jourSemaine{

Samedi = 0,Dimanche = 1,Lundi = 2,Mardi = 3,Mercredi = 4,Jeudi = 5,Vendredi = 6

};

Types et variables

Types élaborés : struct, union, * pour les pointeurs, [ ... ] pour les tableaux, ( ... ) pour les fonctions.

Types élaborés Les pointeurs

Définition Un pointeur va ‘pointer’ vers des données

Allocation et libération mémoire La gestion de la mémoire

Le signe * Indiquation d’un pointeur Récupérer les données

Le signe & Récupérer le pointeur

Types élaborés Les pointeurs

Allocation statique

int p[10];p[0] = 1;p[1] = 2;…P[9] = 10;

int a = 2; int * p = NULL; p = &a ; *p = 2;

Types élaborés Les pointeurs

Allocation Dynamique, l’instruction malloc

int *p = malloc(sizeof(int)*n);

Types élaborés Les pointeurs

Libération Dynamique, l’instruction free

free(p)

Types élaborés

Tableau de caractères

char tab[] = {'t', 'a', 'b', '\0'}; char * p1 = &tab[0];

Types élaborés Les fonctions

Définition

Déclaration d’une fonction

Le corps de la fonction

Le retour de la fonction !

F()

Types élaborés

Comment appeler une fonction

Un exemple de ce que nous avons vu

Un exercice ou deux

Structures de contrôle

L’instruction conditionnelle ‘if’ Si telle condition est vrai, alors

Les opérateurs && || Les tests <= >= == etc…

Sinon, si… Sinon…

Structures de contrôle

L’instruction Switch Permet le choix

Instruction très puissante

Structures de contrôle

Les boucles for

while

do… while

Exemples Et Exercices

Recommended