Vous n'êtes pas identifié(e).
L'icône rouge permet de télécharger chaque page du wiki visitée au format
PDF et la grise au format ODT →
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente Prochaine révision Les deux révisions suivantes | ||
utilisateurs:hypathie:tutos:memo-c [19/08/2014 11:26] Hypathie [fonction bis] |
utilisateurs:hypathie:tutos:memo-c [19/08/2014 16:21] Hypathie [Fonctions] |
||
---|---|---|---|
Ligne 1054: | Ligne 1054: | ||
=====Fonctions ===== | =====Fonctions ===== | ||
- | ====Explications ==== | + | ====Fonction "main" et fonction utilisateur ==== |
* Reprenons le code de base : | * Reprenons le code de base : | ||
<code c> | <code c> | ||
Ligne 1097: | Ligne 1098: | ||
> On peut aussi inscrire : **''void bonjour(void){''**. | > On peut aussi inscrire : **''void bonjour(void){''**. | ||
+ | <note tip> | ||
+ | <code c> | ||
+ | #include <stdio.h> | ||
+ | </code> | ||
+ | > ce qui commence par un "#" sont des instructions pour le compilateur | ||
+ | > "include" : inclure -> inclure le fichier "stdio.h" | ||
+ | > c'est un fichier qui contient des commandes | ||
+ | > une commande comme printf se trouve dans le fichier "stdio.h" | ||
+ | </note> | ||
====Passer des éléments à une fonction ==== | ====Passer des éléments à une fonction ==== | ||
===explications=== | ===explications=== | ||
Ligne 1234: | Ligne 1243: | ||
</code> | </code> | ||
+ | ====Bibliothèque string.h==== | ||
+ | ===fonction strcpy === | ||
+ | Elle permet d'utiliser la fonction **''strcpy''**. | ||
+ | Cette fonction "strcpy" permet la manipulation des chaînes de caractères. | ||
+ | strcpy(nom-de-la-variable-declaree,"nlle-valeur"); | ||
+ | |||
+ | |||
+ | <code c> | ||
+ | #include <stdio.h> | ||
+ | #include <string.h> | ||
+ | int main(void){ | ||
+ | char nom[5]="toto"; | ||
+ | strcpy(nom,"tata"); | ||
+ | printf("%s\n",nom); | ||
+ | } | ||
+ | </code> | ||
+ | <code> | ||
+ | tata | ||
+ | </code> | ||
+ | |||
+ | => Voir le fichier "string.h" pour voir quelle autre fonction elle contient. | ||
+ | |||
+ | ===fonction strcat=== | ||
+ | |||
+ | Elle permet de rajouter à la suite.\\ | ||
+ | "cat", comme "concaténer" ! | ||
+ | |||
+ | <code c> | ||
+ | #include <stdio.h> | ||
+ | #include <string.h> | ||
+ | int main(void){ | ||
+ | char nom[15]="bonjour"; | ||
+ | strcat(nom," toto"); | ||
+ | printf("%s\n",nom); | ||
+ | } | ||
+ | </code> | ||
+ | <code> | ||
+ | bonjour toto | ||
+ | </code> | ||
+ | |||
+ | ===for dans chaîne de caractères=== | ||
+ | <code c> | ||
+ | #include <stdio.h> | ||
+ | #include <string.h> | ||
+ | int main(void){ | ||
+ | char nom[25]="Hello"; | ||
+ | strcat(nom," Toto, are you ok ?"); | ||
+ | int i; | ||
+ | for(i=0;i!=25;i++){ | ||
+ | printf("nom[%d]=%c\n",i,nom[i]); | ||
+ | } | ||
+ | printf("\n"); | ||
+ | |||
+ | } | ||
+ | </code> | ||
+ | |||
+ | <code> | ||
+ | nom[0]=H | ||
+ | nom[1]=e | ||
+ | nom[2]=l | ||
+ | nom[3]=l | ||
+ | nom[4]=o | ||
+ | nom[5]= | ||
+ | nom[6]=T | ||
+ | nom[7]=o | ||
+ | nom[8]=t | ||
+ | nom[9]=o | ||
+ | nom[10]=, | ||
+ | nom[11]= | ||
+ | nom[12]=a | ||
+ | nom[13]=r | ||
+ | nom[14]=e | ||
+ | nom[15]= | ||
+ | nom[16]=y | ||
+ | nom[17]=o | ||
+ | nom[18]=u | ||
+ | nom[19]= | ||
+ | nom[20]=o | ||
+ | nom[21]=k | ||
+ | nom[22]= | ||
+ | nom[23]=? | ||
+ | nom[24]= | ||
+ | </code> | ||
+ | > L'espace réservé peut-être plus large que les éléments. | ||
+ | |||
+ | ===Fonction strcmp=== | ||
+ | |||
+ | Elle permet de comparer. | ||
+ | |||
+ | <code c> | ||
+ | #include <stdio.h> | ||
+ | #include <string.h> | ||
+ | int main(void){ | ||
+ | char nom[10]="Hello b"; | ||
+ | printf("%d\n",strcmp(nom,"Hello")); | ||
+ | } | ||
+ | </code> | ||
+ | 32 | ||
+ | <code> | ||
+ | |||
+ | </code> | ||
=====Les pointeurs ===== | =====Les pointeurs ===== | ||
====Définitions==== | ====Définitions==== | ||
Ligne 1488: | Ligne 1598: | ||
>On affecte la variable "addition" de la fonction "somme" car elle a un "return". | >On affecte la variable "addition" de la fonction "somme" car elle a un "return". | ||
- | > On met **''int main(void){''** car il possible de faire renvoyer des choses par la fonction "main". | + | > On met **''int main(void){''** car il possible de faire renvoyer des information par la fonction "main". |
> Quand elle ne renvoie rien on peut aussi mettre **''void main(void){''**. | > Quand elle ne renvoie rien on peut aussi mettre **''void main(void){''**. | ||
+ | |||
+ | >**C'est au système d'exploitation que le "int" renvoie des informations**. | ||
===ce servir du "int" dans la fonction "main"=== | ===ce servir du "int" dans la fonction "main"=== |