C programmering for nybegyndere
Funktioner
Du vil lære at lave funktioner, funktioner er underrutiner (eng. subrutine).
Med funktioner kan du lave programstumper og anvende dem fra et andet sted i programmet. Årsagen til vi anvender funktioner er flere, en af dem er at genbruge og undgå at kode trivialiteter igen og igen, se følgende eksempel uden funktioner med trivialiteterne i.
- Compilér og kør programmet
# ./a.out
Momsen af 100.00 er 25.00
Momsen af 200.00 er 50.00
Momsen af 500.00 er 125.00
#
og dette omskrevne program der udfører nøjagtig den samme opgave men hvor en funktion anvendes.
- Compilér og kør programmet
# ./a.out
Momsen af 100.00 er 25.00
Momsen af 200.00 er 50.00
Momsen af 500.00 er 125.00
#
Jeg håber du ser ideen, med funktioner. main bliver mindre og mere overskuelig. Der er fordele ved at vedligeholde et sådant design, hvis momssatsen ændres er der kun ét sted i programmet der skal ændres. En anden grund er at koden bliver mere overskuelig, du bør bryde koden ned i flere funktioner hvis en kodeblok fylder mere end en A4 side (ca. 60 linier).
Hvis en funktion ikke skal returnere værdier, som i eksemplet med momsudregningen bruges typen void, der betyder tom eller intet.
Syntaksen for at definere funktioner er:
{
sætninger...
}
Definitioner til syntaks | |
---|---|
type | erklæring af return datatypen kan være en af de simple datatyper og kun én. |
funktionsnavn | du bestemmer selv navnet indenfor rammer af legale identifiers |
parameter | overførsel af værdier og variabler. Parameter kaldes på engelsk argument. |
Syntaksen for at definere funktioner siger at der først skal erklæres en type, den definerer returværdien for funktionen. Returnværdien fra en funktion kan kun være simple typer som (char, int, double, void) plus nogle tillæg til disse typer. Returværdien bruges f.eks. i en tildeling til en variabel.
Efter type skal erklæres et funktionsnavn. det er op til dig at finde et navn der er passende for dig. Tegnsættet der kan anvendes ligger indenfor A-Z, a-z, 0-9 og _ (underscore) og det første tegn må ikke være et tal.
Parameter er en værdi som overføres til funktionen og erklæres som type variabelnavn, typen er her samme slags simple type, men også sammensatte typer kan anvendes.