Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Oppiskele Otsikkotiedostot, Prototyypit | Funktiot
C:n Perusteet

bookOtsikkotiedostot, Prototyypit

Tämän kurssin aikana olemme johdonmukaisesti käyttäneet tiedostoa stdio.h. Tämä tiedosto toimii vakiosyötteen ja -tulosteen otsikkotiedostona. Se sisältää printf()-funktion prototyypin, jota olemme hyödyntäneet jokaisessa oppitunnissa.

Main.c

Main.c

copy
12345678
//#include <stdio.h> int main() { printf("Using `printf()` without `stdio.h`"); return 0; }

Jos jätät stdio.h-tiedoston pois, printf()-funktio ei enää toimi. Tämän funktion kutsuminen ilman otsikkotiedostoa aiheuttaa virheen.

Otsikkotiedostojen ymmärtäminen

Otsikkotiedostot, kuten stdio.h, sisältävät muuttujien, taulukoiden ja funktioprototyyppien määrittelyt. Ne modularisoivat projektikoodin, mahdollistaen osien liittämisen tarpeen mukaan. Tämä lähestymistapa tehostaa projektien hallintaa.

Funktioprototyypit

Funktioprototyyppi on käytännössä funktion määrittely ilman toteutusta. Prototyyppi toimii "ennakkovaroituksena" kääntäjälle, ilmoittaen funktion olemassaolosta.

function_type function_name(arguments);

Se muistuttaa tavallista funktiota, mutta ilman yksityiskohtia. Huomioi lopussa oleva puolipiste (;). Miten funktioprototyyppi sijoitetaan erilliseen otsikkotiedostoon?

Monitiedostoiset projektit

Tähän asti olemme kirjoittaneet muuttujat ja funktiot yhteen tiedostoon, main-funktion yhteyteen. Ammattimaisessa kehityksessä tämä ei kuitenkaan ole tavanomaista. Laaditaan funktio, joka arvioi kondensaattorin lataus-/purkausajan kapasitanssin ja resistanssin perusteella.

Projekti jaetaan kolmeen tiedostoon:

  1. main.c – tämä pääasiallinen tiedosto on paikka, jossa kaikkia funktioita kutsutaan;
  2. func.h – tänne tallennetaan funktion esittely;
  3. func.c – kondensaattorin lataus-/purkausajan laskentafunktion toteutus sijaitsee tässä tiedostossa.
main.c

main.c

function.h

function.h

function.c

function.c

copy
12345678910
#include "func.h" int main() { R = 10; C = 150; printf("Charge/discharge will be %.2f ms\n", chrg_dchrg(R,C)); return 0; }
Note
Huomautus

%.2f määrittää, että tulos näytetään kahden desimaalin tarkkuudella.

Tämän ohjelman suorittaminen tuottaa seuraavan tuloksen:

"Charge/discharge will be 7.50 ms"
question mark

Mitä funktioprototyyppi tekee C-kielessä?

Select the correct answer

Oliko kaikki selvää?

Miten voimme parantaa sitä?

Kiitos palautteestasi!

Osio 5. Luku 5

Kysy tekoälyä

expand

Kysy tekoälyä

ChatGPT

Kysy mitä tahansa tai kokeile jotakin ehdotetuista kysymyksistä aloittaaksesi keskustelumme

Suggested prompts:

What does the function to calculate capacitor charge/discharge time look like?

Can you explain how to include and use custom header files in a C project?

Why is it important to separate code into multiple files in C projects?

Awesome!

Completion rate improved to 2.63

bookOtsikkotiedostot, Prototyypit

Pyyhkäise näyttääksesi valikon

Tämän kurssin aikana olemme johdonmukaisesti käyttäneet tiedostoa stdio.h. Tämä tiedosto toimii vakiosyötteen ja -tulosteen otsikkotiedostona. Se sisältää printf()-funktion prototyypin, jota olemme hyödyntäneet jokaisessa oppitunnissa.

Main.c

Main.c

copy
12345678
//#include <stdio.h> int main() { printf("Using `printf()` without `stdio.h`"); return 0; }

Jos jätät stdio.h-tiedoston pois, printf()-funktio ei enää toimi. Tämän funktion kutsuminen ilman otsikkotiedostoa aiheuttaa virheen.

Otsikkotiedostojen ymmärtäminen

Otsikkotiedostot, kuten stdio.h, sisältävät muuttujien, taulukoiden ja funktioprototyyppien määrittelyt. Ne modularisoivat projektikoodin, mahdollistaen osien liittämisen tarpeen mukaan. Tämä lähestymistapa tehostaa projektien hallintaa.

Funktioprototyypit

Funktioprototyyppi on käytännössä funktion määrittely ilman toteutusta. Prototyyppi toimii "ennakkovaroituksena" kääntäjälle, ilmoittaen funktion olemassaolosta.

function_type function_name(arguments);

Se muistuttaa tavallista funktiota, mutta ilman yksityiskohtia. Huomioi lopussa oleva puolipiste (;). Miten funktioprototyyppi sijoitetaan erilliseen otsikkotiedostoon?

Monitiedostoiset projektit

Tähän asti olemme kirjoittaneet muuttujat ja funktiot yhteen tiedostoon, main-funktion yhteyteen. Ammattimaisessa kehityksessä tämä ei kuitenkaan ole tavanomaista. Laaditaan funktio, joka arvioi kondensaattorin lataus-/purkausajan kapasitanssin ja resistanssin perusteella.

Projekti jaetaan kolmeen tiedostoon:

  1. main.c – tämä pääasiallinen tiedosto on paikka, jossa kaikkia funktioita kutsutaan;
  2. func.h – tänne tallennetaan funktion esittely;
  3. func.c – kondensaattorin lataus-/purkausajan laskentafunktion toteutus sijaitsee tässä tiedostossa.
main.c

main.c

function.h

function.h

function.c

function.c

copy
12345678910
#include "func.h" int main() { R = 10; C = 150; printf("Charge/discharge will be %.2f ms\n", chrg_dchrg(R,C)); return 0; }
Note
Huomautus

%.2f määrittää, että tulos näytetään kahden desimaalin tarkkuudella.

Tämän ohjelman suorittaminen tuottaa seuraavan tuloksen:

"Charge/discharge will be 7.50 ms"
question mark

Mitä funktioprototyyppi tekee C-kielessä?

Select the correct answer

Oliko kaikki selvää?

Miten voimme parantaa sitä?

Kiitos palautteestasi!

Osio 5. Luku 5
some-alt