Télécharger la présentation
La présentation est en train de télécharger. S'il vous plaît, attendez
1
Rappels C
2
Introduction Gestion de la mémoire Langages de programmation
La gestion de la mémoire : comme des tiroirs Langages de prog : 1- Langage machine (assembleur) 2- Lanages de haut niveau Structuré c objet c++
3
Introduction Présentation du langage C Kernighan et Ritchie
Lanage de programmation tres utilisé pdt les 80 Structuré et typé
4
Un exemple simple Le Hello World
#include <stdio.h> int main(void) { printf("hello, world\n"); return 0; } Tout expliquer en global Exercice 1
5
Le langage C Les fichiers en tête
#include <stdio.h> int main(void) { printf("hello, world\n"); return 0; } Header
6
Le langage C Les fichiers C
#include <stdio.h> int main(void) { printf("hello, world\n"); return 0; } HelloWorld.c
7
Des sources à l’executable
Préprocesseur
8
Des sources à l’executable
Directives du préprocesseur #include <stdio.h> int main(void) { printf("hello, world\n"); return 0; } Preprocess Avant le code Inclusion du fichier
9
Des sources à l’executable
Directives du préprocesseur #include #define Exercice 2
10
Des sources à l’executable
Compilation Exercice 1 & 2
11
Des sources à l’executable
Liens Exercice 1&2
12
Syntaxe Les fichiers en tête
#include <stdio.h> int main(void) { printf("hello, world\n"); return 0; } Elements de syntaxe Bien rappeler l’importance du ; Parenthèses dans maths Saut à la ligne pas d’importance On va revenir sur les fonctions
13
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 entiers >= 8 bits : char, unsigned char, signed char (C89). Types entiers >= 16 bits : short (identique à signed short), unsigned short. Types entiers (mot machine) >= 16 bits : int (identique à signed int), unsigned int. Types entiers >= 32 bits : long (identique à signed long), unsigned long. Types entiers >= 64 bits (C99) : long long (identique à signed long long), unsigned long long. Types à virgule flottante : float, double, long double (C89). Types énumérés : enum. Types élaborés : struct, union, * pour les pointeurs, [ ... ] pour les tableaux, ( ... ) pour les fonctions. Voir exemple 1&2&1er code
14
Types et variables Types énumérés : enum enum jourSemaine {
Samedi = 0, Dimanche = 1, Lundi = 2, Mardi = 3, Mercredi = 4, Jeudi = 5, Vendredi = 6 }; Enum de types définis mais constant Utilisation : int main() { enum Days today = sunday; switch (today) { case 1: cout << "It's Monday" << endl; break; default: cout << "Not Monday" << endl; }} Les enums sont très utilisé en programmation 3d
15
Types et variables Types élaborés : struct, union, * pour les pointeurs, [ ... ] pour les tableaux, ( ... ) pour les fonctions. Types entiers >= 8 bits : char, unsigned char, signed char (C89). Types entiers >= 16 bits : short (identique à signed short), unsigned short. Types entiers (mot machine) >= 16 bits : int (identique à signed int), unsigned int. Types entiers >= 32 bits : long (identique à signed long), unsigned long. Types entiers >= 64 bits (C99) : long long (identique à signed long long), unsigned long long. Types à virgule flottante : float, double, long double (C89). Types énumérés : enum. Types élaborés : struct, union, * pour les pointeurs, [ ... ] pour les tableaux, ( ... ) pour les fonctions.
16
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
17
Types élaborés Les pointeurs Allocation statique int a = 2;
Voir exempleptr int a = 2; int * p = NULL; p = &a ; *p = 2; int p[10]; p[0] = 1; p[1] = 2; … P[9] = 10;
18
Types élaborés Les pointeurs
Allocation Dynamique, l’instruction malloc Voir exemplemalloc int *p = malloc(sizeof(int)*n);
19
Types élaborés Les pointeurs Libération Dynamique, l’instruction free
free(p)
20
Types élaborés Tableau de caractères
char tab[] = {'t', 'a', 'b', '\0'}; char * p1 = &tab[0];
21
Types élaborés Les fonctions Définition Déclaration d’une fonction
Le corps de la fonction Le retour de la fonction ! F() Déclaration : Type nom(args)
22
Types élaborés Comment appeler une fonction
Un exemple de ce que nous avons vu Un exercice ou deux Exemple p34 / exemplefcn
23
Structures de contrôle
L’instruction conditionnelle ‘if’ Si telle condition est vrai, alors Les opérateurs && || Les tests <= >= == etc… Sinon, si… Sinon…
24
Structures de contrôle
L’instruction Switch Permet le choix Instruction très puissante
25
Structures de contrôle
Les boucles for while do… while Voir exemple while
26
Exemples Et Exercices Faire exos
Présentations similaires
© 2024 SlidePlayer.fr Inc.
All rights reserved.