laboratóriumi munka
1. rész: Alapok a C programok
1. feladat függelék «Helló Világ!»
Ez ad egy ötletet az elemi függvények.
#include
** nyomtatása egy egyszerű üzenet. * /
int main (int argc, char * argv [])
printf ( "Hello World \ n!"); printf ( "nyomjon meg egy gombot \ n."); getch ();
Továbbá, a kapott fájlt a kódot kell összeállítani, hogy készítsen egy futtatható fájl
Az első laboratóriumi összeállításához fogjuk használni egy egyszerű fordító Djgpp, alatt terjesztett nyílt GNU licenc.
Először meg kell megtekintéséhez hívja a fordító a parancssorból. Írja be a következő parancsot:
Az ablak jelenik meg, például az ilyen információk:
Olvasás specifikációk a C: / Djgpp / lib / specifikációk
Ez azt jelenti, hogy a fordító nem áll rendelkezésre.
Az alapok megteremtése programok C
Visszatérve programozni hello.c fájlt, fordítsd le a fájl tartalmát egy futtatható fájl Hello.exe. Először be kell állítani az aktuális könyvtárban a parancssorba a D: \ Student, erre használjuk a parancsot a meghajtó és a könyvtár „cd”:
porckorong csapat - ez csak jelzi a nevét:
könyvtárat váltani parancsot a D meghajtó:
Így, miközben az aktuális könyvtárban (D: \ diák), akkor hívja a fordító parancsot a C kód fájlokat ebben a könyvtárban. Metódushívás parancs a következő általános formában:
> Gcc -o imya_fayla.s imya_ispolnyaemogo_fayla.exe
Példánkban megkapjuk a következő parancsot:
> Gcc hello.c -o HelloApp.exe
Miután nyomja meg az ENTER a fordító munkáját. Ha a programunkban nincsenek hibák, akkor HelloApp .exe fájl jön létre végrehajtható programkódot. Mert az ő teljesítménye elég beírni a parancssorba:
> HelloApp .exe
Az eredmény a következő lesz:
Ha a kód kúszott hiba, a fordító panaszkodnak, például:
D: \ Student> gcc -o hello.c HelloApp.exe
Hello.c: A funkció `fő„:
Hello.c: 10: parse error előtt 'printf'
Ez arra utal, hogy a kód nem szétszerelhető, mielőtt hívja a funkció „printf” on line 10. Ebben az esetben, ez volt a hiányzó pontosvessző után az első hívást „printf” funkció:
printf ( "nyomjon meg egy gombot \ n.");
Szabályai szerint a szintaxis: Minden szereplő a szervezetben a funkció pontosvesszővel végződjön
Az elemek egy egyszerű program
Programunk a Windows indításakor a konzolon (a «MS-DOS ablak") nyomtatott üdvözlő «Helló Világ!», A következő sorban «nyomjon meg egy billentyűt. „És miután bármely gombjának megnyomásával a rendszer. Ez az algoritmus a munkáját. Amint ez megtörténik ... Az első két sor:
Azt mondják, hogy működjön a prototípusokat, amelyek lehetővé teszik, hogy a fordító ellenőrizze a paramétereket az átviteli helyes (vagyis zárójelben), és visszatér a helyes érték típusok (ez fel van tüntetve, a bal oldalon a függvény neve, itt mindkét funkciót, ha nem megy bele a részletekbe, visszatérési értékek int típusú, azaz egész szám).
Ezt követi egy húr
Ez a sor nem sok értelme a program. Általában a # rgagma, bár hivatalosan tartozik a előfeldolgozó irányelvek valójában címzettje maga a fordító nincs elpárologtató a különleges bánásmódot. #pragma irányelvek olyan sok, és ezek eltérő a különböző fordítóprogramok. Ez az irányelv azt jelenti, hogy a fordító nem kell figyelmeztető üzenetet ad (nem hibaüzenetek), amely a fő funkciója paraméterek nem használt benne.
Az ember a címsor és a fő funkciója a következő:
Az alapok megteremtése programok C
És ez lenne a helyes, mert a fő funkciója van, akkor felmerül a kérdés, amit szeret. Azokat a paramétereket, melyeket az eredeti kódot - a parancssori argumentumokat a program vagy fakultatív parancs vagy irányelv az operációs rendszer.
Számos előre néz, azt mondják, hogy int argc a főcím - a szám a parancssori és char * argv [] - egy tömböt a legtöbb érv a karakter (char *) formában. Azonban a main () függvény megadja nekünk a lehetőséget, hogy beszéljünk a funkciók általában.
main () függvény
Elvégre az irányelveknek a programban található meghatározás funkció main (). Mint már említettük, a szigorú értelemben vett, minden C program tartalmazza a jellemző, ami a belépési pont. Azonban a Windows környezetben helyett main () gyakran használják WinMain ().
main () függvény - természetesen, egy speciális esete a funkció egyáltalán. Funkciók a „építőkockák” a program, vagy szubrutinok. Ők viszont épülnek szereplők teszik ki a testet a funkciót. Minden üzemeltető megszűnik pontosvesszővel (;).
Általában, a függvény a következőképpen definiálható:
visszatérési_típus functionName (lista)
// zárójelek zárt test a funkciót,
// tagjai az egyes szereplők. test _funktsii
A mi esetünkben, a függvény törzsében áll négy szereplők, az első három, amelyek viszont függvényhívásokkal. A visszatérési érték figyelmen kívül hagyja itt. Ahogy itt használjuk, a funkciók a következők szabványos (executive) C könyvtár első üzenetet jelenít meg, és átalakítja a húr, hogy a konzol, és a második - prompt (anélkül, hogy a vonal), és a harmadik, getch (), megvárja a felhasználó számára, hogy nyomjon meg egy gombot.
Amikor ez megtörténik, getch () visszatér a vezérlés a main () függvény, és a return, hogy visszatérjen a vezérlést az operációs rendszert:
változók
Külön egységet kell az adatok szükségesek, hogy egy bizonyos típusú. Tárolni, hogy a program során szükségünk van, előbb a megfelelő helyre a memóriában, és a második, azonosítani azt hozzárendelni egy nevet. Nevezett memóriaegység adatok tárolására hívják változó.
Minden változó, és minden egyes kifejezés (műveletek változók) típusúnak kell lennie. Ez határozza meg, hogy milyen típusú műveleteket lehet végezni rajtuk. Például, a leírás int inch;
azt mondja, hogy a neve inch változó int, vagyis inch egy egész típusú változó.
A főbb típusai a leginkább közel áll az „igazi hardver” gépek, amelyek: char
Ők képviselik egészek. A következő típusok: úszó
dupla hosszú kettős
képviseli lebegőpontos számok. Char típusú változó a mérete tárolásához szükséges egy karaktert a gépen (általában egy bájt vagy 8 bit). A változó int a méret szükséges integer aritmetikai a gépen (általában egy szót 2 bájt vagy 16 bit).
Beépített adattípusok kerülnek bemutatásra az 1. táblázatban:
1. táblázat Integrált adattípusokat
A következő aritmetika használható bármely kombinációja a következő típusú:
+ (Plusz, egyváltozós és bináris) - (mínusz, egyváltozós és bináris) * (szorzás)