Hjem Personlig finansiering Hvordan du oppretter en egendefinert headerfil i C-dummies

Hvordan du oppretter en egendefinert headerfil i C-dummies

Video: Week 4, continued 2024

Video: Week 4, continued 2024
Anonim

Etter hvert som flere modulprosjekter i C blir mer komplekse, finner du den første delen av hver kildekodefil som vokser lengre og lengre: Flere prototyper, flere konstanter og flere globale variabler og strukturer er nødvendig for hver modul. I stedet for å belaste koden med redundanser, kan du opprette en headerfil for prosjektet.

En headerfil inneholder omtrent alt du kan legge inn i en kildekodefil. Spesielt bør du sette elementer i headerfilen som ellers ville gå inn i hver kildekodemodul. Her er en prøvekoplingsfil:

HOVEDFIL EX2403. H

#include # include / prototypes * / void fillstructure (void); ugyldig utskriftsstruktur (tomrom); / * konstanter * / / * variabler * / struct ting {karnavn [32]; int alder;}; typedef struct ting menneskelig;

Overskriftsfilen som vises i headerfilen ex2403. h starter med noen inkluderer direktiver, noe som er fint; så lenge som headerfiler kreves av hver modul i programmet, kan du spesifisere dem i din egen headerfil. Noen programmerere velger å gjøre det; andre gjør det ikke.

To prototyper er spesifisert på linjer 6 og 7. Igjen er en grunn til å ha en headerfil å prototype, spesielt på tvers av flere moduler.

Overskriftsfilen ex2403. h mangler konstanter, men å plassere disse elementene i en headerfil er ganske vanlig. Det er en kommentar på Linje 9 hvis programmet vokser konstanter senere.

Endelig er strukturens ting definert på linje 13. Deretter bruker linje 18 typedef slik at ordet human (i stedet for struct ting) kan brukes i koden.

Andre populære elementer som skal inkluderes i en headerfil er makroer. Dette er preprosessedirektiver som også kan bidra til å forenkle koden din.

Hvis du vil bruke en lokal header-fil i koden, angir du den på en linje, akkurat som hvilken som helst annen headerfil. Den store forskjellen er at doble anførselstegn brukes i stedet for vinkelbeslag. For eksempel:

#include "ex2403. H"

Kompilatoren ser etter overskriftens filnavn i dobbelte sitater i gjeldende katalog, sammen med kildekodefilen / filene. Hvis filen ikke er i den katalogen, må du spesifisere et stinavn, som i

#include "headers / ex2403. H"

Prosjekt ex2403 main. c Kildekode demonstrerer hvordan headerfilen i Header File ex2403. h er brukt.

PROJEKT EX2403 HOVED. C KILDE KODE

# inkluderer "ex2403. H" menneskelig person; int main () {fillstructure (); printstructure (); return 0;} void fillstructure (void) {printf ("Skriv inn ditt navn:"); fgets (personnavn, 31, stdin); printf ("Skriv inn din alder:"); scanf ("% d", og person.alder);} ugyldig utskriftsstruktur (tomrom) {printf ("Du er% sn", person. navn); printf ("Og du er% d år gammel. n", person. alder);}

Linje 1 av kildekoden vist i Project ex2403 main. c Kildekode inneholder den egendefinerte overskriftsfilen, ex2403. h. Typedef-mennesket blir da brukt på linje 3. Det er det! Ingen andre erklæringer er nødvendige i kildekoden fordi de har blitt håndtert av den egendefinerte overskriften.

Øvelse 1 : Opprett et nytt prosjekt i kode:: Blokker. Opprett en ny headerfil, ex2403. h, for prosjektet, og kopier koden fra Header File ex2403. h til den filen. Kopier kildekoden fra Project ex2403 main. c Kildekode i hovedlisten. c-fil. Bygg og løp.

Øvelse 2 : Del ut strukturene for fillstruktur () og printstructure () fra Project ex2403 main. c Kildekode slik at hver vises i sin egen kildekodefil, input. c og utgang. c, henholdsvis. Bygg flermodulprogrammet.

Hvordan du oppretter en egendefinert headerfil i C-dummies

Redaktørens valg

Speil Lockup (MUP) på Nikon D7100-dummies

Speil Lockup (MUP) på Nikon D7100-dummies

En komponent i det optiske systemet til din Nikon D7100 kamera er et speil som beveger seg hver gang du trykker på lukkerknappen. Den lille vibrasjonen som følge av speilets handling kan føre til svak utryddelse av bildet når du bruker en veldig langsom lukkerhastighet, skyter med en lang teleobjektiv, ...

Opptaksmuligheter på Nikon D5300 - dummies

Opptaksmuligheter på Nikon D5300 - dummies

Du kan styre noen få aspekter av din filmoppgave på din Nikon D5300. Du kan manipulere videoen din for å skape en rekke effekter. Følgende liste går gjennom disse alternativene: Eksponeringsmodus: Du kan ta opp filmer i hvilken som helst eksponeringsmodus (Auto, Scenemodus, Effektmodus, P, M, og så videre). Som med fortsatt ...

Hvordan man manipulerer eksponering og kontroll på Nikon D5600-dummies

Hvordan man manipulerer eksponering og kontroll på Nikon D5600-dummies

Følgende retusjonsverktøy på din Nikon D5600 kamerajustering eksponering og farge: D-Lighting, Quick Retouch, Filter Effects og Monochrome. Selv om disse verktøyene ikke får deg til å velge ett kamera over en annen, hvis du allerede har en Nikon D5600, er de tilgjengelige, så du kan også lære å bruke dem! D-Lighting: Active D-Lighting ...

Redaktørens valg

DOs og DON'Ts of Fantasy Basketball Draft Picks - dummies

DOs og DON'Ts of Fantasy Basketball Draft Picks - dummies

Hvis du vurderer bli med i en fantasy basketball liga, må du ta hensyn til følgende DOs og DON'Ts før du vurderer spillerne du vil utarbeide på laget ditt. Kreditt: © iStockphoto. com / IS_ImageSource Fantasy basketball draft pick DOS I de fleste fantasy basketball ligaer bestemmer kommisjonen (personen som setter opp ligaen) bestillingen i ...

Linjene og dimensjonene til en basketballbane - dummies

Linjene og dimensjonene til en basketballbane - dummies

En basketballbane har symmetri; Den ene halvdelen av retten er et speilbilde av den andre. Hele basketballbanen (se figur 1) er 94 fot med 50 fot. På hver halvplass viser malte linjer fritt korsbanen og sirkelen, samt trepunktsbuen, hvis avstand fra kurven varierer basert ...

Kjøp av gratis agenter i fantasy fotball - dummies

Kjøp av gratis agenter i fantasy fotball - dummies

I løpet av fantasy fotball sesongen, spillere som ikke blir utarbeidet bli gratis agenter - spillere tilgjengelig for enhver ligamatch villig til å slippe en eid spiller. Bruk gratis agentbassenget til å erstatte en skadet spiller eller noen som bare ikke lever opp til dine forventninger. Bruk disse tipsene for å finne en gratis agent for å ...

Redaktørens valg

Grunnleggende for din iOS-app - dummies

Grunnleggende for din iOS-app - dummies

Heldigvis mesteparten av det du trenger å gjøre så langt som iOS animasjon er opptatt er allerede bygd inn i rammen. Noen visningsegenskaper kan animeres, noe som betyr at du bare må fortelle visningen hvor du skal begynne og hvor du skal avslutte flyttingen, og noen få andre valgfrie parametere, og du er ferdig. ...

Montering av verktøylinjen for Android App Development - dummies

Montering av verktøylinjen for Android App Development - dummies

Når du vet at du er klar til være en Android-utvikler, ta tak i datamaskinen din og få sprekker på å installere verktøyene og rammene som er nødvendige for å bygge ditt første blockbuster-program. Linux-kjernen Android ble opprettet på toppen av åpen kildekode Linux-kjernen. Android-teamet valgte å bruke denne kjernen fordi den ga bevist ...

Grunnleggende om Cocoa Touch i iOS Apps - dummies

Grunnleggende om Cocoa Touch i iOS Apps - dummies

Cocoa Touch-laget inneholder det meste av objektet -orientert utvikler-vendt rammer for å bygge iOS applikasjoner. Det er ditt eneste utgangspunkt for app-utvikling. Apple-guiderne oppfordrer deg til å undersøke teknologiene i dette laget for å se om de oppfyller dine behov, før du ser på de andre lagene. Med andre ord, Apple har til hensikt å ...