C:ssä voimme jakaa suuren ohjelman perusrakennuspalikoihin, jotka tunnetaan nimellä funktio. Funktio sisältää joukon ohjelmointikäskyjä, joita ympäröi {}. Funktiota voidaan kutsua useita kertoja, jotta C-ohjelmalle voidaan tarjota uudelleenkäytettävyyttä ja modulaarisuutta. Toisin sanoen voidaan sanoa, että funktiokokoelma luo ohjelman. Toiminto tunnetaan myös nimellä menettelyä tai aliohjelma muilla ohjelmointikielillä.
C:n toimintojen etu
C-funktioilla on seuraavat edut.
- Käyttämällä funktioita voimme välttää saman logiikan/koodin uudelleenkirjoittamisen uudelleen ja uudelleen ohjelmassa.
- Voimme kutsua C-funktioita kuinka monta kertaa tahansa ohjelmassa ja mistä tahansa kohdasta ohjelmassa.
- Voimme seurata suurta C-ohjelmaa helposti, kun se on jaettu useisiin toimintoihin.
- Uudelleenkäytettävyys on C-toimintojen tärkein saavutus.
- Toimintojen kutsuminen on kuitenkin aina ylimääräistä C-ohjelmassa.
Toiminnan näkökohdat
C-funktiolla on kolme aspektia.
SN | C-toimintonäkökohdat | Syntaksi |
---|---|---|
1 | Toiminnan ilmoitus | paluutyyppi funktion_nimi (argumenttiluettelo); |
2 | Toimintokutsu | funktion_nimi (argumenttiluettelo) |
3 | Toiminnan määritelmä | paluutyyppi funktion_nimi (argumenttiluettelo) {funktion runko;} |
Toiminnon luomissyntaksi c-kielellä on annettu alla:
return_type function_name(data_type parameter...){ //code to be executed }
Toimintojen tyypit
C-ohjelmoinnissa on kahdenlaisia toimintoja:
Palautusarvo
C-funktio voi palauttaa arvon funktiosta tai ei. Jos sinun ei tarvitse palauttaa mitään arvoa funktiosta, käytä void palautustyypiksi.
Katsotaanpa yksinkertainen esimerkki C-funktiosta, joka ei palauta mitään arvoa funktiosta.
Esimerkki ilman palautusarvoa:
void hello(){ printf('hello c'); }
Jos haluat palauttaa minkä tahansa arvon funktiosta, sinun on käytettävä mitä tahansa tietotyyppiä, kuten int, long, char jne. Palautustyyppi riippuu funktiosta palautettavasta arvosta.
apache
Katsotaanpa yksinkertainen esimerkki C-funktiosta, joka palauttaa int-arvon funktiosta.
Esimerkki palautusarvolla:
int get(){ return 10; }
Yllä olevassa esimerkissä meidän on palautettava arvona 10, joten palautustyyppi on int. Jos haluat palauttaa liukulukuarvon (esim. 10.2, 3.1, 54.5 jne.), sinun on käytettävä menetelmän palautustyyppinä float.
float get(){ return 10.2; }
Nyt sinun on kutsuttava funktio saadaksesi funktion arvon.
Toimintojen kutsumisen eri näkökohdat
Funktio voi hyväksyä tai olla hyväksymättä mitään argumenttia. Se voi palauttaa mitään arvoa tai ei välttämättä palauttaa sitä. Näiden tosiseikkojen perusteella funktiokutsuissa on neljä eri näkökohtaa.
java visualisaattori
- funktio ilman argumentteja ja ilman palautusarvoa
- funktio ilman argumentteja ja palautusarvolla
- funktio argumenteilla ja ilman palautusarvoa
- funktio argumenteilla ja palautusarvolla
Esimerkki funktiosta ilman argumenttia ja palautusarvoa
Esimerkki 1
#include void printName(); void main () { printf('Hello '); printName(); } void printName() { printf('Javatpoint'); }
Lähtö
Hello Javatpoint
Esimerkki 2
#include void sum(); void main() { printf(' Going to calculate the sum of two numbers:'); sum(); } void sum() { int a,b; printf(' Enter two numbers'); scanf('%d %d',&a,&b); printf('The sum is %d',a+b); }
Lähtö
Going to calculate the sum of two numbers: Enter two numbers 10 24 The sum is 34
Esimerkki funktiosta ilman argumenttia ja palautusarvolla
Esimerkki 1
#include int sum(); void main() { int result; printf(' Going to calculate the sum of two numbers:'); result = sum(); printf('%d',result); } int sum() { int a,b; printf(' Enter two numbers'); scanf('%d %d',&a,&b); return a+b; }
Lähtö
Going to calculate the sum of two numbers: Enter two numbers 10 24 The sum is 34
Esimerkki 2: ohjelma laskea neliön pinta-ala
saada taulukon pituus c
#include int sum(); void main() { printf('Going to calculate the area of the square '); float area = square(); printf('The area of the square: %f ',area); } int square() { float side; printf('Enter the length of the side in meters: '); scanf('%f',&side); return side * side; }
Lähtö
Going to calculate the area of the square Enter the length of the side in meters: 10 The area of the square: 100.000000
Esimerkki funktiosta, jossa on argumentti ja ilman palautusarvoa
Esimerkki 1
#include void sum(int, int); void main() { int a,b,result; printf(' Going to calculate the sum of two numbers:'); printf(' Enter two numbers:'); scanf('%d %d',&a,&b); sum(a,b); } void sum(int a, int b) { printf(' The sum is %d',a+b); }
Lähtö
Going to calculate the sum of two numbers: Enter two numbers 10 24 The sum is 34
Esimerkki 2: ohjelma laskemaan viiden luvun keskiarvo.
#include void average(int, int, int, int, int); void main() { int a,b,c,d,e; printf(' Going to calculate the average of five numbers:'); printf(' Enter five numbers:'); scanf('%d %d %d %d %d',&a,&b,&c,&d,&e); average(a,b,c,d,e); } void average(int a, int b, int c, int d, int e) { float avg; avg = (a+b+c+d+e)/5; printf('The average of given five numbers : %f',avg); }
Lähtö
Going to calculate the average of five numbers: Enter five numbers:10 20 30 40 50 The average of given five numbers : 30.000000
Esimerkki funktiosta, jossa on argumentti ja palautusarvo
Esimerkki 1
#include int sum(int, int); void main() { int a,b,result; printf(' Going to calculate the sum of two numbers:'); printf(' Enter two numbers:'); scanf('%d %d',&a,&b); result = sum(a,b); printf(' The sum is : %d',result); } int sum(int a, int b) { return a+b; }
Lähtö
Going to calculate the sum of two numbers: Enter two numbers:10 20 The sum is : 30
Esimerkki 2: Ohjelma tarkistaa, onko luku parillinen vai pariton
#include int even_odd(int); void main() { int n,flag=0; printf(' Going to check whether a number is even or odd'); printf(' Enter the number: '); scanf('%d',&n); flag = even_odd(n); if(flag == 0) { printf(' The number is odd'); } else { printf(' The number is even'); } } int even_odd(int n) { if(n%2 == 0) { return 1; } else { return 0; } }
Lähtö
Going to check whether a number is even or odd Enter the number: 100 The number is even
C Kirjastotoiminnot
Kirjastofunktiot ovat C:n sisäänrakennettuja funktioita, jotka on ryhmitelty ja sijoitettu yhteiseen paikkaan, jota kutsutaan kirjastoksi. Tällaisia toimintoja käytetään tiettyjen toimintojen suorittamiseen. Esimerkiksi printf on kirjastotoiminto, jota käytetään tulostukseen konsolissa. Kirjaston toiminnot ovat kääntäjien suunnittelijoiden luomia. Kaikki C-standardikirjaston funktiot määritellään eri otsikkotiedostojen sisällä, jotka on tallennettu tunnisteella .h . Meidän on sisällytettävä nämä otsikkotiedostot ohjelmaamme, jotta voimme hyödyntää tällaisissa otsikkotiedostoissa määritettyjä kirjastotoimintoja. Esimerkiksi voidaksemme käyttää kirjastotoimintoja, kuten printf/scanf, meidän on sisällytettävä ohjelmaamme stdio.h, joka on otsikkotiedosto, joka sisältää kaikki kirjaston toiminnot koskien vakiosyöttöä/tulostusta.
Luettelo eniten käytetyistä otsikkotiedostoista on seuraavassa taulukossa.
SN | Otsikkotiedosto | Kuvaus |
---|---|---|
1 | stdio.h | Tämä on tavallinen tulo-/lähtöotsikkotiedosto. Se sisältää kaikki kirjaston toiminnot koskien vakiotuloa/lähtöä. |
2 | conio.h | Tämä on konsolin input/output otsikkotiedosto. |
3 | merkkijono.h | Se sisältää kaikki merkkijonoon liittyvät kirjastofunktiot, kuten gets(), puts(), jne. |
4 | stdlib.h | Tämä otsikkotiedosto sisältää kaikki yleiset kirjastofunktiot, kuten malloc(), calloc(), exit() jne. |
5 | matematiikka.h | Tämä otsikkotiedosto sisältää kaikki matemaattisiin operaatioihin liittyvät funktiot, kuten sqrt(), pow() jne. |
6 | aika.h | Tämä otsikkotiedosto sisältää kaikki aikaan liittyvät toiminnot. |
7 | ctyyppi.h | Tämä otsikkotiedosto sisältää kaikki merkkien käsittelytoiminnot. |
8 | stdarg.h | Tässä otsikkotiedostossa on määritelty muuttujaargumenttifunktiot. |
9 | signaali.h | Kaikki signaalinkäsittelytoiminnot on määritelty tässä otsikkotiedostossa. |
10 | setjmp.h | Tämä tiedosto sisältää kaikki hyppytoiminnot. |
yksitoista | locale.h | Tämä tiedosto sisältää aluetoimintoja. |
12 | errno.h | Tämä tiedosto sisältää virheenkäsittelytoimintoja. |
13 | väittää.h | Tämä tiedosto sisältää diagnostiikkatoimintoja. |
Lisätietoja C-toiminnoista on alla:
C-toimintoihin liittyy useita lisätietoja. Jotkut niistä ovat seuraavat:
Modulaarinen ohjelmointi: Kyky jakaa a valtava ohjelma pienempiin, paremmin hallittaviin moduuleihin on yksi tärkeimmistä eduista C-funktioiden hyödyntämisessä. Jokainen toiminto voi sisältää tietyn työn tai toiminnallisuuden komponentin, mikä virtaviivaistaa ja selkeyttää ohjelman yleistä rakennetta. Tämä modulaarinen strategia parantaa koodin uudelleenkäyttöä ja helpottaa ylläpitoa ja virheenkorjausta.
jvm javassa
Koodin uudelleenkäyttö: Funktioiden avulla voit luoda tietyn algoritmin tai logiikkapalan vain kerran ja käyttää sitä toistuvasti koko ohjelman ajan. Voit kutsua toimintoa milloin tahansa, kun haluat suorittaa koodin, jolloin et joudu kopioimaan sitä muualle. Se ei vain nopeuttaa kehitystä mutta myös varmistaa johdonmukaisuuden ja vähentää virheiden mahdollisuutta.
Kapselointi ja abstraktio: Hämärtämällä toiminnallisuuden toteutuksen erityispiirteet funktiot tarjoavat abstraktiotason. Toiminnon prototyypin käyttöliittymä voidaan määrittää kohdassa a otsikkotiedosto , kun taas varsinainen toteutus voidaan tarjota eri lähdetiedostossa. Ohjelman muut osat voivat hyödyntää toimintoa ilman, että tarvitsee ymmärtää, kuinka se on toteutettu sisäisesti, koska käyttöliittymä ja toteutus on erotettu toisistaan.
Helppo ohjelman ylläpito: Ohjelmaa voidaan ymmärtää ja ylläpitää helpommin, jos se jaetaan pienempiin toimintoihin. Mahdollisuus määrittää erityinen vastuu jokaiselle toiminnolle tekee koodista luettavamman ja helpottaa vianetsintää ja virheenkorjausta. Voit keskittyä tarvittavaan toimintoon vaikuttamatta ohjelman muihin osiin, jos virhe löytyy tai muutosta tarvitaan.
Parempi yhteistyö: Toiminnot mahdollistavat saman projektin parissa työskentelevien kehittäjien yhteistyön. Ohjelma voidaan jakaa toimintoihin, jotta useat tiimin jäsenet voivat työskennellä erilaisia toimintoja heti. Kehittäjät voivat integroida työnsä sujuvasti toimintoihin, jos rajapinnat on määritelty hyvin, mikä parantaa tuottavuutta ja edistää tehokasta kehitystä.
Parametrin välittäminen: Voit lähettää argumentteja tai tietoja C:n funktiolle, jotta se voi käsitellä niitä. Funktio voi suorittaa toimintoja ja tuottaa tuloksia käyttämällä näitä syötteitä. Voit lisätä toimintojen joustavuutta ja mukautuvuutta antamalla parametreja, mikä lisää ohjelmasi yleistä monipuolisuutta.
Palautusarvot: Funktiot voivat lähettää arvoja takaisin niitä kutsuneeseen koodiin, mikä mahdollistaa funktion suoritustulosten viestimisen. Voit käyttää palautettua arvoa muilla ohjelman alueilla suoritettuasi laskelmia tai tietojen käsittelyä funktion sisällä. Palautusarvot ovat erityisen hyödyllisiä, kun sinun on laskettava tulos tai määritettävä ehto funktion tulosteesta riippuen.
Johtopäätös:
Yhteenvetona voidaan todeta, että funktiot ovat välttämättömiä C-ohjelmoinnissa, koska ne antavat ohjelman organisaatio, uudelleenkäytettävyys ja modulaarisuus . Kehittäjät voivat välttää saman koodin toistuvan luomisen hajottamalla valtavat ohjelmat pienempiin toimintoihin, jolloin koodista tulee tehokkaampi ja helpompi ylläpitää. Missä tahansa ohjelmassa voi kutsua funktiota, mikä tarjoaa joustavuutta ja parantaa ohjausvirtaa.
The ilmoitus, soita , ja määritelmä funktiot ovat vain muutamia niiden monista ominaisuuksista. Kääntäjä saa tiedon funktion ilmoituksesta nimi, argumentit , ja palautustyyppi . Funktiota voi kutsua joko kanssa tai ilman parametrit ja a:n kanssa tai ilman palautusarvo . Ohjelmoijat rakentavat käyttäjän määrittämiä toimintoja parantaakseen koodinsa luettavuutta ja optimointia, kun taas C-kirjasto toimii mm. printf() ja scanf() tarjota esiasetettuja ominaisuuksia.
Kaiken kaikkiaan toiminnot ovat tärkeitä C-ohjelmoinnin rakennuspalikoita, jotka tarjoavat etuja, kuten paremman organisoinnin, koodin uudelleenkäytön ja valtavien ohjelmien yksinkertaisen seurannan. Toimintokutsut voivat lisätä ylimääräisiä kustannuksia, mutta niiden edut painavat pienemmän suorituskyvyn. Ohjelmoijat voivat kirjoittaa tehokkaita ja modulaarisia C-ohjelmia ymmärtämällä ja käyttämällä toimintoja.