Langage C-10 : Allocation dynamique de la mémoire avec les fonctions malloc, calloc, realloc et free

  Рет қаралды 25,333

Hassan EL BAHI

Hassan EL BAHI

Күн бұрын

Пікірлер: 18
@Leo-hx2up
@Leo-hx2up Жыл бұрын
Merci prof 💚 vous m'avez vraiment aidé
@kaoutarkawtar7221
@kaoutarkawtar7221 24 күн бұрын
MERCI 👌👌👌👌👌👌
@nassouroudinenjoya7919
@nassouroudinenjoya7919 Жыл бұрын
Prof svp faîtes les vidéos sur les listes chaînées 🙏🙏🙏
@lanemou
@lanemou 25 күн бұрын
Très bonne vidéo, je revoyais mon C pour me rafraîchir la mémoire, en parlant de mémoire je me permet d'ajouter une petite précision pour la fonction realloc. La fonction realloc peut échouer, même si ce n'est que lors d'une augmentation de la mémoire allouée, admettons qu'on a déjà initialisé un tableau de 10 éléments double *tab = NULL; tab = malloc(sizeof(double) * 10); Il faut dans l'idéal toujours garder un pointeur de secours sur le tableau avant d'utiliser realloc ❔Pourquoi: Quand realloc échoue, elle ne fait qu'une chose; elle renvoie NULL. Si on n'a qu'un pointeur sur le tableau (ici tab) et que realloc renvoie NULL, tab va valoir NULL, nous n'aurons donc aucun moyen de libérer la mémoire allouée avant par malloc. C'est l'une de ces fameuses "fuite de mémoire", il nous faut donc un deuxième pointeur de sécurité. Bien qu'à la fin du programme l'OS libère toute la mémoire qui a été allouée pour ce dernier, c'est considéré comme une mauvaise pratique que de ne pas le faire soi-même ❌Mauvaise pratique: ... tab = realloc(tab, sizeof(double)*20); if (tab == NULL) { // bah on fait rien on peut plus libérer la mémoire sans pointer sur les anciennes valeurs allouées } ✅Bonne pratique: ... double *tab_reallocateur = realloc(tab, sizeof(double)*20); if (tab_reallocateur == NULL) { // Là plus de problèmes, on peut par exemple libérer la mémoire puis retourner une valeur d'erreur // on peut aussi imaginer que c'est pas grave, et au lieu de retourner -1 après avoir libéré la mémoire // on continue l'exécution du programme free(tab); return -1; } tab = tab_reallocateur;
@carla-bures
@carla-bures 8 ай бұрын
la vidéo est parfaite merci beaucoup
@oumardiaby9390
@oumardiaby9390 Жыл бұрын
Merci mr😊
@omarkidness
@omarkidness Жыл бұрын
Thank you you are the best
@HAMIDOU-x4d
@HAMIDOU-x4d 6 ай бұрын
Très cool
@meryem-qr7jk
@meryem-qr7jk 11 ай бұрын
Ahssn charh ❤❤
@jihedfarhat1908
@jihedfarhat1908 Жыл бұрын
S'il vous plaît nous avons besoin de vidéos expliquant cela avec des algorithmes
@rajajiji8291
@rajajiji8291 Жыл бұрын
Prof svp Les exercise forme pdf 😢
@garciagoma7124
@garciagoma7124 Жыл бұрын
Bonjour ! Voudriez-vous m’expliquer le rôle de la bibliothèque « iostream » en langage C?
@iceberg1484
@iceberg1484 Жыл бұрын
Iostream dans C++ je pense
@christianedouardbazile
@christianedouardbazile Ай бұрын
J'ai pas bien compris *(T+i)
@AL-eu4ey
@AL-eu4ey Ай бұрын
La valeur de ieme element dans le tableau T
@mouhcinjaad8021
@mouhcinjaad8021 Жыл бұрын
#include #include int main(void) { int n, s = 0, m; printf("entre le nombre des note que tu veux: "); scanf("%d",&n); int *p = malloc(n * sizeof(int)); if (p == NULL) printf("votre memoire est pleine"); else { for (int i = 0; i < n; i++) { printf("Entrer l'element T[%d]: ", i+1); scanf("%d", p + i); s += *(p + i); } m = s / n; } printf("La moyen est : %d", m); free(p); return 0; }
@AssanouBerangerZou
@AssanouBerangerZou 5 ай бұрын
#include #include int main(){ int n; printf("saisir le nombre d'element du tableau:"); scanf("%d",&n); int tab[n]; int *p=tab; p=(int*)malloc(n*sizeof(int)); if(p==NULL){ printf("Erreur d'allocation"); } else{ printf("saisir les elements du tableau: "); for(p=tab;p
@abdadev
@abdadev 6 ай бұрын
#include #include int main () { int n; int som = 0; int *p; printf("entrer la taille du tableau "); scanf("%d",&n); printf("la taille du tableau est : %d ",n); p = (int *)malloc(n * sizeof(int)); if (p == NULL) { printf("Erreur d'allocation de mémoire "); return 1; } printf("entrer les elements "); for(int i=0; i
Langage C: Allocation et Désallocation des Tableaux Dynamiques  -  الدارجة المغربية
25:58
LearnToCode - الدارجة المغربية
Рет қаралды 6 М.
Vampire SUCKS Human Energy 🧛🏻‍♂️🪫 (ft. @StevenHe )
0:34
Alan Chikin Chow
Рет қаралды 138 МЛН
Thank you mommy 😊💝 #shorts
0:24
5-Minute Crafts HOUSE
Рет қаралды 33 МЛН
TUTO C - #17 L'allocation de mémoire dynamique (malloc)
18:52
Boris ('PrimFX')
Рет қаралды 48 М.
39 - Allocation de mémoire (Introduction): Langage C (Darija)
7:53
EL BAHJA academy
Рет қаралды 47 М.
I made Tetris in C, this is what I learned
15:15
Austin Larsen
Рет қаралды 29 М.
Langage C #15 - allocation dynamique mémoire
25:03
FormationVidéo
Рет қаралды 157 М.
#25 Langage C -Les Pointeurs - Partie 1 (Définition)
24:01
Programming With HAIRIBI
Рет қаралды 50 М.
Vampire SUCKS Human Energy 🧛🏻‍♂️🪫 (ft. @StevenHe )
0:34
Alan Chikin Chow
Рет қаралды 138 МЛН