Méthode d'implémentation du langage C du tableau dynamique : malloc et free : utilisez malloc() pour allouer de la mémoire, realloc() pour modifier la taille et free() pour libérer de la mémoire. Fonctions de tableau dans stdlib.h : realloc() modifie la taille, calloc() crée et initialise à 0, reallocarray() spécifie le nombre d'éléments.
Le tableau dynamique nous permet d'ajuster la taille du tableau selon les besoins au moment de l'exécution, évitant ainsi les problèmes de gaspillage de mémoire ou de débordement rencontrés lors de l'utilisation de tableaux statiques. En langage C, il existe deux manières principales d'implémenter des tableaux dynamiques :
malloc et free sont des fonctions en langage C pour l'allocation dynamique de mémoire. Nous pouvons utiliser malloc() pour allouer un bloc de mémoire et y stocker les éléments du tableau. Si vous le souhaitez, vous pouvez également utiliser realloc() pour modifier la taille de la mémoire allouée. Lorsque le tableau n'est plus nécessaire, free() doit être utilisé pour libérer la mémoire allouée.
Exemple de code :
<code class="c">#include <stdlib.h> int main() { // 分配一个包含 10 个整数的动态数组 int *array = (int *)malloc(10 * sizeof(int)); // 访问和修改数组元素 array[0] = 1; array[9] = 10; // 使用 realloc() 增大数组大小 array = (int *)realloc(array, 20 * sizeof(int)); // 释放动态数组 free(array); return 0; }</code>
La bibliothèque standard C fournit également plusieurs fonctions pour les tableaux dynamiques :
Exemple de code :
<code class="c">#include <stdlib.h> int main() { // 使用 calloc() 创建一个包含 10 个整数的动态数组,并将其元素初始化为 0 int *array = (int *)calloc(10, sizeof(int)); // 使用 reallocarray() 增大数组大小 array = (int *)reallocarray(array, 20, sizeof(int)); // 释放动态数组 free(array); return 0; }</code>
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!