Definition av funktionsprototyper i C och C ++

En funktionsprototyp är en deklaration i C och C ++ för en funktion, dess namn, parametrar och returtyp före dess faktiska deklaration. Detta gör det möjligt för kompilatorn att utföra mer robust typkontroll. Eftersom funktionsprototypen berättar kompilatorn vad de kan förvänta sig, är kompilatorn bättre i stånd att flagga alla funktioner som inte innehåller den förväntade informationen. En funktionsprototyp utelämnar funktionskroppen.

Till skillnad från en fullfunktionsdefinition avslutas prototypen i en halvkolon. Till exempel:

intgetsum (float * -värde);

Prototyper används oftast i sidfiler - även om de kan visas var som helst i ett program. Detta gör att externa funktioner i andra filer kan ringas och kompilatorn kan kontrollera parametrarna under sammanställningen.

Syften

  • En funktionsprototyp säkerställer att samtal till en funktion görs med rätt antal och typer av argument.
  • En funktionsprototyp anger antalet argument.
  • Den anger datatypen för vart och ett av de vidtagna argumenten.
  • Det ger ordningen i vilken argumenten skickas till funktionen.

Funktionsprototypen berättar kompilatorn vad man kan förvänta sig, vad man ska ge till funktionen och vad man kan förvänta sig av funktionen.

fördelar

  • Prototyper sparar tid för felsökning.
  • Prototyper förhindrar problem som uppstår när du sammanställer med funktioner som inte deklarerats.
  • När funktionsöverbelastning inträffar skiljer prototyperna vilken funktionsversion att ringa.