Mikä on .c ja .h tiedoston ero?

c-koodi

Kun teen koodia tallentuu se .c -tiedostona. Netistä löytyvissä malleissa on myös samanniminen .h -tiedosto.

3

137

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • Headereita tarvitaan esim. jos koodailee dynaamisia dll tai so -sovelluskirjastoa, eli headereissa on liittymä (rajapinta) näihin kirjastojen toimintoihin. Toki myös headerit tarvitaan itse ohjelmaan kääntämiseen, jossa toiminnot on jäsennelty eri c-tiedostoihin, ellet sitten koodaa koko softaa yhden c-tiedoston varaan?

      Eli käännös: "gcc -c vuohi.c aasi.c oranki.c -o animaali". Ja jos haluat aasi.c:stä käyttää oranki.c:n toimintoja, pitää aasi.c:n alkuun pistää #include "oranki.h"

    • Turboillen

      Tunnetuin yleisesti käytetty .h-tiedosto on varmaan stdio.h, joka sisältää mm. koko joukon valmiiksi määriteltyjä sellaisia funktioita kuin fclose, feof, fflush ja *fopen. Jos niitä ei olisi valmiiksi tarjolla, niin koko c-ohjelmointi muuttuisi aika tylsäksi hommaksi. Miksi pyörä pitäisi keksiä uudestaan?

      Tyypillisen c-kielisen ohjelman kääntäminen konekielelle tapahtuu esimerkiksi kolmessa vaiheessa. Ensimmäisessä vaiheessa alkukielinen ohjelma esikäsitellään (preprocessing) niin, että mm. #include-käskyt ja niiden sisältämät viittaukset .h-tiedostoihin korvataan niiden sisältämillä merkkijonoilla. Näin laajennettu (c-kielinen) ohjelma käännetään sitten (useimmiten) asembler-kieliseksi, mutta ohjelman mahdollisesti sisältämät viittaukset muihin (objekti-)tiedostoihin jätetään vielä selvittämättä. Viimeeksi näin saadun puolivalmiin (asembler-)ohjelman sisältämät viittaukset korvataan toimivilla linkeillä ao. tiedostoihin.

    • .c tiedostoihin menee toteutus ja .h tiedostoihin rajapinta.

    Ketjusta on poistettu 0 sääntöjenvastaista viestiä.

    Luetuimmat keskustelut

    1. Mitä ihmettä

      Kaipaat hänessä
      Ikävä
      103
      1625
    2. Välillä käy mielessä

      olisiko sittenkin ollut parempi, että emme koskaan olisi edes tavanneet. Olisi säästynyt monilta kyyneleiltä.
      Ikävä
      80
      1265
    3. Mitä oikein

      Näet minussa? Kerro.
      Ikävä
      91
      1170
    4. Lopeta tuo mun kiusaaminen

      Ihan oikeasti. Lopeta tuo ja jätä mut rauhaan.
      Ikävä
      139
      1096
    5. Mika Muranen juttu tänään

      Jäi puuttumaan tarkennus syystä teolle. Useat naapurit olivat tehneet rikosilmoituksia tästä kaverista. Kaikki oli Muras
      Sananvapaus
      2
      1092
    6. Uskoontulo julistetun evankeliumin kautta

      Ja kun oli paljon väitelty, nousi Pietari ja sanoi heille: "Miehet, veljet, te tiedätte, että Jumala jo kauan aikaa sitt
      Raamattu
      586
      1039
    7. Kotipissa loppuu

      Onneksi loppuu kotipizza, kivempi sotkamossa käydä pitzalla
      Kuhmo
      20
      980
    8. Hanna Kinnunen sai mieheltään tiukkaa noottia Tähdet, tähdet -kotikatsomosta: "Hän ei kestä, jos..."

      Hanna Kinnunen on mukana Tähdet, tähdet -kisassa. Ja upeasti Salkkarit-tähti ja radiojuontaja onkin vetänyt. Popedan Lih
      Tv-sarjat
      8
      932
    9. Oho! Farmi-tippuja Wallu Valpio ei säästele sanojaan Farmi-oloista "Se oli niin luotaantyöntävää..."

      Wallu oikein listaa epämiellyttävät asiat… Monessa realityssä ollut Wallu Valpio ei todellakaan säästele sanojaan tippum
      Tv-sarjat
      12
      877
    10. Helvetin hyvä, että "hullut" tappavat toisensa

      On tämä merkillistä, että yritetään pitää hengissä noita paskaperseitä, joilla ei ole muuta tarkoitusta, kuin olla riida
      Kokkola
      9
      761
    Aihe