Déclaration dans sous-programme
Fermé
Breton22000
Messages postés
9
Date d'inscription
jeudi 5 mai 2016
Statut
Membre
Dernière intervention
24 mai 2016
-
9 mai 2016 à 18:33
Breton22000 Messages postés 9 Date d'inscription jeudi 5 mai 2016 Statut Membre Dernière intervention 24 mai 2016 - 9 mai 2016 à 21:27
Breton22000 Messages postés 9 Date d'inscription jeudi 5 mai 2016 Statut Membre Dernière intervention 24 mai 2016 - 9 mai 2016 à 21:27
A voir également:
- Déclaration dans sous-programme
- Ce programme est écrit en python. il construit un mot secret dans une variable mais il ne l'affiche pas. modifiez-le pour qu'il affiche le mot secret. exécutez-le. quel est ce mot secret ? ✓ - Forum Python
- Frequence programme national ✓ - Forum Messagerie
- Programme demarrage windows 10 - Guide
- Fichier ouvert dans un autre programme - Guide
- Programme bonjour ✓ - Forum Windows
2 réponses
fiddy
Messages postés
11069
Date d'inscription
samedi 5 mai 2007
Statut
Contributeur
Dernière intervention
23 avril 2022
1 816
9 mai 2016 à 18:40
9 mai 2016 à 18:40
Bonjour,
Cela dépend du prototype de la fonction appelée.
Exemple :
Vu la question, je pense que tu débutes. Je te conseille la lecture du tuto : https://openclassrooms.com/fr/courses/19980-apprenez-a-programmer-en-c
Cela dépend du prototype de la fonction appelée.
Exemple :
typeF nomFonction (typeA a, typeB b) {
/*corps de la fonction*/
}
int main(void) {
typeA a=...;
typeB b=...;
typeF f;
/*appel de la fonction*/
f=nomFonction(a,b);
/*etc.*/
return 0;
}
Vu la question, je pense que tu débutes. Je te conseille la lecture du tuto : https://openclassrooms.com/fr/courses/19980-apprenez-a-programmer-en-c
Dalfab
Messages postés
703
Date d'inscription
dimanche 7 février 2016
Statut
Membre
Dernière intervention
1 mars 2023
100
9 mai 2016 à 20:11
9 mai 2016 à 20:11
Bonjour,
Le langage C permet d'utiliser des prototypes sans indiquer les paramètres, il est pourtant très utile de les indiquer dès le prototype, la ligne est alors identique au début la fonction à part qu'elle se termine par un ';'.
L'avantage est que lors de l'appel dans le main le compilateur pourra signaler par une erreur ou un warning si les paramètres ne correspondent pas à ceux attendus.
Si la question est : "que faut-il passer en paramètre à un fonction?" Et bien, il faut lui passer l'ensemble des données dont elle aura besoin, et si des données sont à modifier il faut aussi ajouter des pointeurs sur ces données.
Le langage C permet d'utiliser des prototypes sans indiquer les paramètres, il est pourtant très utile de les indiquer dès le prototype, la ligne est alors identique au début la fonction à part qu'elle se termine par un ';'.
L'avantage est que lors de l'appel dans le main le compilateur pourra signaler par une erreur ou un warning si les paramètres ne correspondent pas à ceux attendus.
Si la question est : "que faut-il passer en paramètre à un fonction?" Et bien, il faut lui passer l'ensemble des données dont elle aura besoin, et si des données sont à modifier il faut aussi ajouter des pointeurs sur ces données.
Breton22000
Messages postés
9
Date d'inscription
jeudi 5 mai 2016
Statut
Membre
Dernière intervention
24 mai 2016
9 mai 2016 à 21:27
9 mai 2016 à 21:27
Merci beaucoup pour ta réponse ! C'est plus clair maintenant ! :)
9 mai 2016 à 19:15
En fait le problème est un peu plus compliqué que ca...
Je fais un programme avec de nombreux sous programmes et certains ne demandent pas de variables lors de la déclaration des prototypes
exemple: (le sous programme là marche très bien).
prototype:
void nomjoueur();
dans le main:
nomjoueur(jr[2].nom);
en dessous, écriture du sous programme:
void nomjoueur(S_joueur jr[])
par contre,
lorsque je veux faire un sous programme avec un peu plus de valeurs à entrer (tableau, tableau de structure, variables...) cela ne marche pas. Je ne sais pas comment rentrer les différentes variables et à quel moment le faire.
exemple:
prototype:
void modifgrille();
dans le main:
modifgrille(jr[2],tab,i);
en dessous, écriture du sous programme:
void modifgrille(S_joueur jr[],char grille[LO][LA],int i)
merci pour l'aide !