Funktsioon on avalduste rühm, mida kasutatakse konkreetse ülesande täitmiseks. C-programmeerimisel algab täitmine main () -st. See on funktsioon. Selle asemel, et kirjutada ühte programmi kõik avaldused, võib selle jagada mitmeks funktsiooniks. Iga funktsioon täidab erinevaid funktsioone. Funktsiooni prototüüp räägib kompilaatorile funktsiooni nime, tagastamise tüüpide ja parameetrite kohta. Seda tuntakse ka kui funktsiooni deklaratsiooni. Igal funktsioonil on selle tuvastamiseks kindel nimi. Funktsioonilaused on kirjutatud lokitõkete paari sisse. Funktsioonid võivad väärtuse tagastada. Mõni funktsioon ei anna väärtust tagasi. Andmed edastatakse funktsioonile parameetrite loendi abil. Funktsiooni määratlusel on funktsiooni tegelik funktsionaalsus. C-programmeerimisel on funktsiooni prototüüp ja funktsiooni määratlus. võtme erinevus funktsiooni prototüübi ja funktsiooni määratluse vahel on see, et funktsiooni prototüüp sisaldab ainult funktsiooni deklaratsiooni, samal ajal kui funktsiooni määratlus sisaldab funktsiooni tegelikku rakendamist. Funktsiooni definitsioonil on kohalikud muutujad ja väited, mis määravad funktsiooni.
1. Ülevaade ja peamised erinevused
2. Mis on funktsiooni prototüüp C-s?
3. Mis on funktsiooni määratlus C-s?
4. Funktsiooni prototüübi ja funktsiooni määratluse sarnasused C-s
5. Kõrvuti võrdlus - funktsiooni prototüüp vs funktsiooni määratlus C-tabelina
6. Kokkuvõte
Funktsiooni prototüüp pakub funktsiooni deklaratsiooni. See täpsustab funktsiooni nime, tagastamise tüübid ja parameetrid. Tagastamise tüübid on andmetüübid, mis naasevad funktsioonist. Kui funktsioon on täisarv, tagastamisviis on int. Kui funktsioon tagastab ujuki väärtuse, on tagastamise tüüp ujuk. Kui funktsioon ei tagasta väärtust, on see tühine funktsioon. Funktsiooni nime kasutatakse selle tuvastamiseks. C-märksõnu ei saa funktsioonide nimedena kasutada. Andmed edastatakse funktsiooni parameetrite abil. Funktsiooni prototüüp ei sisalda funktsiooni reaalset rakendamist. Funktsiooni prototüübil on järgmine süntaks.
(parameetrite loend);
Kui on olemas funktsioon arvutada maksimaalselt kaks numbrit, võib deklaratsiooni kirjutada int max (int num1, int num2); Maksimaalne väärtus tuleks leida numbrites 1 ja 2. Need on täisarvud ja kantakse funktsiooni. Tagastamise tüüp on alguses ka int. Niisiis, funktsioon tagastab täisarvu. Parameetrite nimesid ei ole vaja funktsiooni prototüüpi kirjutada. Kuid andmetüübid on vaja kirjutada. Seetõttu int max (int, int); on ka kehtiv funktsiooni prototüüp. Kui on kaks täisarvu num1, num2, num3 ja prototüüp kirjutatakse int max (int num1, int num2, num3); see on kehtetu. Numbritel num1, num2 on andmetüübid, kuid num3-l pole andmetüüpe. Seetõttu on see kehtetu.
Vaadake allolevat programmi.
# kaasata
int CarMax (int x, int y);
int main ()
int p = 10;
int q = 20;
int vastus;
vastus = calMax (p, q);
printf (“Maksimaalne väärtus on% d \ n”, vastus);
tagasi 0;
int calMax (int p, int q)
int väärtus;
if (p> q)
väärtus = p;
veel
väärtus = q;
tagastatav väärtus;
Eelneva kohaselt näitab teine lause funktsiooni prototüüpi. Sellel puudub rakendus. Tegelik rakendamine toimub pärast põhiprogrammi. Funktsiooni prototüübid on kasulikumad, kui määratleda funktsioon ühes lähtefailis ja kutsuda see funktsioon teises failis sisse.
Funktsiooni määratlusel on funktsiooni tegelik rakendamine. See sisaldab seda, mida funktsioon peaks tegema. Kui programm kutsub funktsiooni, viiakse juhtimine kutsutud funktsioonile. Pärast funktsiooni täitmist naaseb juhtimisfunktsioon tagasi põhifunktsiooni. Nõutavad andmed edastatakse funktsioonile parameetriloendina. Kui tagastamise väärtus on olemas, siis mainitakse tagastamise tüüp. Kui tagasiväärtusi pole, on tagasivõtutüüp kehtetu. Kolmnurga pindala arvutamiseks vaadake alltoodud funktsiooni.
# kaasata
float calArea (int x, int y);
int main ()
int p = 10;
int q = 20;
lame piirkond;
pindala = calArea (p, q);
printf (“Maksimaalne väärtus on% f \ n”, pindala);
tagasi 0;
float calArea (int x, int y)
ujuki väärtus;
väärtus = 0,5 * x * y;
tagastatav väärtus;
Ülaltoodud programmi kohaselt osutab teine lause funktsiooni prototüübile. Selle funktsiooni tegelik rakendamine kirjutatakse pärast põhiprogrammi. See on funktsiooni määratlus. P ja q väärtused edastatakse funktsioonile calArea. Muutuja väärtus on funktsioon calArea kohalik muutuja. Pindala arvutatakse ja omistatakse muutuja väärtusele. Siis naasetakse see tagasi põhiprogrammi.
Funktsiooni prototüüp vs funktsiooni määratlus C-s | |
Funktsiooni prototüüp täpsustab funktsiooni nime, tagastamise tüübi, parameetrid, kuid jätab funktsiooni korpuse välja. | Funktsiooni määratluses täpsustatakse funktsiooni nimi, tagastamise tüüp; parameetrid hõlmavad funktsiooni keha. |
Rakendamine | |
Funktsiooni prototüübil puudub funktsiooni rakendamine. | Funktsiooni määratlusel on funktsiooni rakendamine. |
Funktsioonide kasutamisel programmides on eeliseid. Funktsioonid suurendavad koodi korduvkasutatavust. Sama koodi kordamine ja uuesti kirjutamine pole vajalik. Selle asemel saab programmeerija programmi jagada ja vajaliku funktsiooni välja kutsuda. C-s on raamatukogu funktsioonid. Need funktsioonid deklareeritakse C-päisefailides. Mõned neist on printf (), scanf () jne. Programmeerija saab ka ise oma funktsioone kirjutada. C funktsioonidega on seotud kaks terminit. Nad funktsioneerivad prototüüpi ja funktsiooni määratlust. Funktsiooni prototüübi ja funktsiooni definitsiooni erinevus C-s seisneb selles, et funktsiooni prototüüp sisaldab ainult funktsiooni deklaratsiooni, samal ajal kui funktsiooni määratlus sisaldab funktsiooni tegelikku rakendamist.
Selle artikli PDF-versiooni saate alla laadida ja seda võrguühenduseta otstarbel kasutada tsitaatide märkuse kohaselt. Laadige PDF-fail alla siit: Funktsiooni prototüübi ja funktsiooni definitsiooni erinevus C-s
1.C funktsiooni määratlused. Saadaval siin
2.tutorialspoint.com. C funktsioonid. Mõte. Saadaval siin
1. C-programmeerimiskeele logoBy Rezonansowy (Public Domain) Commons Wikimedia kaudu