Un tableau est une structure de données utilisée pour stocker des éléments séquentiels du même type de données. La position d'un élément dans la séquence s'appelle un index. Les index commencent de 0 à (n-1).

Dans cet article, vous apprendrez à utiliser des tableaux en C. La plupart des concepts ici recoupent la plupart des autres langages de programmation, alors assurez-vous d'en prendre note.

Définition de tableaux

Pour définir un tableau, écrivez son type de données suivi du nom du tableau et des crochets:

âge int[8];

À l'intérieur des crochets se trouve le nombre attendu d'éléments de données que le tableau recevra. Si vous devez déclarer deux tableaux en même temps, vous pouvez le faire comme ci-dessous. Il convient de mentionner que les déclarer séparément est la méthode préférée.

âge int[8], taille[8];

Il est également possible de déclarer un tableau comme ci-dessous:

int[8] âge;

La syntaxe ci-dessus signifierait que âge est un pointeur vers un tableau de type entier. Bien que vous puissiez utiliser la "syntaxe du pointeur", la première est préférée.

En rapport: Comment afficher la table de multiplication d'un nombre à l'aide de Python, C++, JavaScript et C

Parfois, vous ne savez peut-être pas combien d'éléments vous attendez de votre tableau. Dans un tel cas, vous devrez déclarer le tableau sans le nombre d'éléments. Voir l'exemple ci-dessous:

âge int[];

Opérations sur les baies

Pour référencer un élément de tableau, écrivez le nom du tableau suivi de son index entre crochets (par ex. âge[5]). Vous pouvez également utiliser des variables entre crochets:

âge[x+y]

Vous devez vous assurer que le calcul de ces variables est compris entre 0 et (n-1). Sinon, vous obtiendrez une erreur de compilation.

Initialisation

Les éléments du tableau peuvent être donnés lors de la déclaration ou plus tard dans le programme. Cette action est connue sous le nom d'initialisation car le tableau a initialement des valeurs nulles.

Voir l'exemple ci-dessous. Il imprime la valeur d'un élément et son index dans le tableau. La ligne 5 utilise une liste d'initialisation pour initialiser le tableau d'entiers.

#comprendre 
int main (void) {
printf("%s%11s
", "Élément", "Valeur");
entier n[4] = {1, 4, 9, 16} ;
// sortie des éléments du tableau au format tabulaire
pour (taille_t i = 0; je < 4; ++i) {
printf("%5u%10d
", je, n[i]);
}
}

Sortir:

Valeur de l'élément
0 1
1 4
2 9
3 16

Utiliser des tableaux pour stocker des chaînes

Les tableaux peuvent également être utilisés pour stocker des chaînes, pas seulement des entiers. Lorsqu'il est utilisé de cette façon, n'oubliez pas d'inclure des guillemets simples pour chaque élément dans la liste d'initialisation.

char fruit[]= ['b', 'e', ​​'r', 'r', 'y', '\0' ];

Notez que le carboniser type de données est utilisé. Un littéral de chaîne se compose en fait de caractères individuels, et c'est pourquoi vous voyez carboniser.

En rapport: Comment apprendre la programmation C++: 6 sites pour commencer

Le tableau affiché se termine par une séquence d'échappement (\0). Il s'agit d'un caractère de fin de chaîne appelé caractère nul. Vous devez toujours l'inclure lors de l'initialisation d'une liste de tableaux.

Il existe en fait un moyen plus simple d'initialiser un tableau de caractères. Nous avons d'abord montré la première approche afin que vous sachiez qu'un tableau de caractères a toujours un caractère de fin spécial (\0). C'est une erreur courante pour les programmeurs débutants d'avoir la taille du tableau de moins d'un, en oubliant le dernier élément (\0).

chaîne de caractères1[5] = "Code" ;

Supposons que vous ayez besoin d'obtenir une entrée utilisateur et de la stocker dans un tableau. Vous pouvez utiliser la fonction de bibliothèque standard scanf pour ça.

Vous devez cependant spécifier le nombre de caractères que la fonction doit attendre. Ceci est dû au fait scanf ne vérifie pas la taille du tableau et peut écrire des données à des adresses situées au-delà du tableau, provoquant un débordement de la mémoire tampon.

Utilisez le %s spécificateur de conversion pour définir l'entrée maximale attendue. Les scanf La fonction lira tous les caractères saisis jusqu'à ce qu'un espace, une tabulation, une nouvelle ligne ou un indicateur de fin de fichier soit rencontré.

Faire progresser votre programmation C

Les ressources que vous utilisez pour apprendre sont tout aussi cruciales que votre zèle à apprendre. Apprendre sans bonnes pratiques rendra votre parcours de programmation difficile.

C est un langage particulièrement difficile à apprendre car il n'est pas orienté objet. Heureusement, nous avons beaucoup de ressources pour vous aider à maîtriser la programmation C.

PartagerTweeterE-mail
Utilisez ces ressources de formation pour maîtriser la programmation C aujourd'hui

Avez-vous déjà souhaité savoir comment effectuer une programmation de base en C? C'est désormais possible grâce à ce pack de formation.

Lire la suite

Rubriques connexes
  • La programmation
  • C Programmation
  • La programmation
  • Langages de programmation
A propos de l'auteur
Jérôme Davidson (23 articles publiés)

Jérôme est rédacteur chez MakeUseOf. Il couvre des articles sur la programmation et Linux. Il est également un passionné de crypto et garde toujours un œil sur l'industrie de la crypto.

Plus de Jerome Davidson

Abonnez-vous à notre newsletter

Rejoignez notre newsletter pour des conseils techniques, des critiques, des ebooks gratuits et des offres exclusives !

Cliquez ici pour vous abonner