Librairie C Fonction – strcmp()

Syntax

Description

La fonction strcmp compare deux chaines de caractères str1 et str2. La fonction commence en comparant les deux premiers caractères de chaque chaîne. S’ils sont égaux, la fonction prend la pair de caractères suivante et continue tant que les caractères ne sont pas différents ou tant que le caractère de fin ‘\0’ n’est pas détecté.
 

Valeurs de retour

Retourne un entier indiquant les différences détectées.

<0Le premier caractère qui est différent a une valeur plus petite dans str1 que str2 
0Le contenu des deux chaines est le même
>0Le premier caractère différent trouvé a une valeur plus grande dans str1 que str2

 

 

 

Exemple

Sortie

 

Librairie C Fonction – strcpy()

Syntax

Description

La fonction strcpy() copie la chaine pointée par source, sur le tampon pointé par destination. La copie comprend le caractère de terminaison ‘\0’. Attention, le tampon de destination doit être suffisamment grand afin de pouvoir recevoir la chaîne de caractères.

Exemple

Dans l’exemple ci-dessus, on copie la chaîne s1 dans s2.

Lire un fichier en C avec fgetc

Nous allons au travers de ce tutoriel expliquer comment programmer en C  la lecture d’un fichier texte. Nous expliquerons chaque ligne de code ajoutée afin d’arriver à un programme fonctionnel.

Tout d’abord, afin de faire des opérations d’entrées sorties, commençons par inclure le fichier d’entête stdio.h (Standard Input/Ouuput Header).

Tout programme écrit en C doit contenir une fonction principale appelée main, c’est à partir de cette dernière que débute un programme.

Comme vous pouvez le voir ci-dessus, à la ligne 3, le mot clé int précède la fonction main pour indiquer que cette dernière retourne un entier.

Nous ajoutons la primitive return à la fin de notre fonction afin de retourner une valeur.

Habituellement un programme retourne 1 en cas d’erreur sinon 0. Considérons que si notre programme arrive à la fin de la fonction main c’est qu’il n’y a pas eu d’erreur.

Afin de pouvoir lire notre fichier nous avons besoin du pointeur de fichier :

FILE* pFichier

Pour stocker les caractères nous utilisons la variable (type entier) :

int c

Nous ouvrons le fichier avec la fonction fopen qui retourne un pointeur sur le fichier. En cas d’échec elle retourne NULL.

La valeur de retour de la fonction fopen est utilisée afin d’initialiser notre pointeur pFichier .

La fonction fopen attend deux paramètres qui sont respectivement, le nom du fichier et mode d’ouverture.

Nous ouvrons un fichier nommé fichier.txt et utilisons le mode d’ouverture « r » pour read (accès en lecture).

Si un echec a eu lieu lors de l’ouverture du fichier, le pointeur pFichier est égal à NULL, dans ce cas nous affichons un message d’erreur à l’aide de la fonction  perror.

La fonction fgetc lit le fichier et retourne le caractère courant, la position dans le fichier est modifiée.

Affichons sur la sortie standard le caractère lu à l’aide de la fonction printf. Nous indiquons que nous souhaitons afficher un caractère avec %c et nous lui fournissons le caractère à afficher c en paramètre.

Notre programme n’est pas encore fini, il lit pour l’instant que le premier caractère du fichier avant de se terminer.

Implémentons une boucle afin d’appeler la fonction fgetc tant que des caractères sont présents. Nous pouvons savoir lorsque nous sommes à la fin du fichier grâce à la fonction fgetc qui retournera dans ce cas EOF.

Ajoutons une boucle infinie while depuis laquelle nous sortirons si le caractère EOF est détecté.

Si le caractère courant est égal à EOF (End Of File – Fin du fichier) nous sortons de la boucle  à l’aide de l’instruction break .

Ajoutons l’instruction fclose afin de fermer correctement le fichier une fois la lecture terminée.

Hello world en langage C

Dans cet article je vais vous montrer comment faire un hello world en langage C sous Linux.

Les pointeurs en C

Un pointeur est une sorte de variable un peu spéciale. Les pointeurs sont conçus pour contenir une adresse mémoire; par exemple l’adresse d’une autre variable.

Déclarer un pointeur est la même chose que pour déclarer une variable normal, excepter qu’il faut faire précéder ce dernier par un astérisque ‘*’.

Il y a deux nouveaux opérateurs que vous devrez connaître pour travailler avec les pointeurs. L’opérateur ‘&’ qui permet de récupérer l’adresse d’une variable. Et l’opérateur de déréférencement ‘*’.

Lorsque vous placez un caractère esperluette devant une variable vous récupérez son adresse, qui peut ensuite être enregistrer dans un pointeur.

Lorsque vous utilisé un caractère astérisque devant une variable vous allez pouvoir récupérer la valeur qui se trouve à cette adresse mémoire.

Ci-dessous, voici un exemple afin d’illustrer mon explication:

En exécutant le code source ci-dessus, voici le résultat que vous devriez obtenu :