[C] A quoi servent les prototypes ...

A quoi servent les prototypes ... [C] - Programmation

Marsh Posté le 17-06-2002 à 22:57:29    

Bonsoir
Juste une simple question : ça sert a quoi la déclaration d'une fonction ?
 
prototypes et autres ...
 
Merci

Reply

Marsh Posté le 17-06-2002 à 22:57:29   

Reply

Marsh Posté le 17-06-2002 à 23:17:04    

ca permet au compilo  de connaitre la geule de ta fonction (ses arguments et ce qu'elle retourne) elle peut ainsi verifier si chaque foa que tu l'appele tu fait pas d'erreur alors que tu n'a pas encore compiler la dite fonction (si par ex, elle est ds un autre fichier source).


---------------
Join us now and share the software;
Reply

Marsh Posté le 17-06-2002 à 23:19:23    

cassidy a écrit a écrit :

ca permet au compilo  de connaitre la geule de ta fonction (ses arguments et ce qu'elle retourne) elle peut ainsi verifier si chaque foa que tu l'appele tu fait pas d'erreur alors que tu n'a pas encore compiler la dite fonction (si par ex, elle est ds un autre fichier source).  




 
Merci ...

Reply

Marsh Posté le 18-06-2002 à 08:42:05    

cassidy a écrit a écrit :

ca permet au compilo  de connaitre la geule de ta fonction (ses arguments et ce qu'elle retourne) elle peut ainsi verifier si chaque foa que tu l'appele tu fait pas d'erreur alors que tu n'a pas encore compiler la dite fonction (si par ex, elle est ds un autre fichier source).  




C'est pas tout à fait ça, par ce que pour ça le compilo peut utiliser l'implémentation dela fonction. Le proto permet de définir une portée i.e. le compilo sait grâce àl'emplacement du proto où il est valide d'appeler la fonction.
Exemple:
 

Code :
  1. void func1();
  2. void func2()
  3. {
  4. func1();
  5. }
  6. //Ok
  7. void func2()
  8. {
  9. func1();
  10. }
  11. void func1();
  12. //marche pas
  13. void func1()
  14. {
  15. }
  16. void func2()
  17. {
  18. func1();
  19. }
  20. //marche aussi


---------------
Le Tyran
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed