Seriál Programovanie v jazyku C - Úvod do seriálu
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Seriál Programovanie v jazyku C - Úvod do seriáluSeriál Programovanie v jazyku C - Úvod do seriálu

 

Seriál Programovanie v jazyku C - Úvod do seriálu

Google       Google       20. 8. 2007       46 402×

V prvom diele nášho seriálu sa oboznámime s históriou jazyka C, povieme si, čo je to kompilátor, interpreter, a linker.

Na úvod by som Vás chcel privítať v tomto seriáli, ktorý sa venuje programovaciemu jazyku C. Tento seriál je určený hlavne pre tých, ktorí majú vážny záujem naučiť sa programovať v tomto, tak mocnom jazyku. Postupom času sa budeme oboznamovať s technikami programovania v C, naučíme sa pracovať s kompilátorom a oboznámime sa aj s tým, ako počítač pracuje so zdrojovým kódom, ktorý sme napísali.

História Jazyka C

Programovací jazyk C bol vyvinutý začiatkom sedemdesiatych rokov. Autorom tohto programovacieho jazyka je Dennis Ritchie. Jazyk bol pôvodne určený pre použitie na operačných systémoch UNIX. Odvtedy sa rozšíril na mnohé iné operačné systémy a stal sa jedným z najpoužívanejších programovacích jazykov. C je najpopulárnejším jazykom na písanie systémového softwaru, hoci sa používa aj na tvorbu aplikácií. Prvý štandard jazyka C je popísaný v knihe D. Ritchieho a B.W. Kernighama The C Programming Language z roku 1978. Tento štandard je často označovaný ako K&R. Dnes sú už stanovené medzinárodné štandardy ANSI, ISO, ktoré zaisťujú prenos aj na iné počítače. V praxi to znamená aj to, že ak napíšete kód, ktorý skompilujete v MS Visual C++, môžete tento skompilovať aj v iných kompilátoroch.

Obecné charakteristiky jazyka C

C je obecne používateľný programovací jazyk (Fortran – vedecko-technické výpočty; Cobol- úlohy z oblasti obchodu; Pascal, Scheme – pre výučbu; Assembler – systémové programovanie, atd.)

› jedná sa o štruktúrovaný jazyk
› väčšinou je jazyk C implementovaný ako prekladač
› prekladač jazyka C je rozsahom malý a je možné ho pomerne jednoducho preniesť na iné platformy
› programy vytvorené pomocou jazyka C majú pomerne krátku dobu prenosu, nízke nároky na pamäť a dajú sa ľahko prenášať na iné platformy (portabilita)

Kompilátor, linker, interpreter

Spočiatku pracovali programátori s najprimitívnejšími inštrukciami počítača, s takzvaným strojovým jazykom. Tieto inštrukcie mali tvar dlhých reťazcov jednotiek a núl. Čoskoro vznikli assemblery, ktoré prevádzali pokyny pre počítač do podoby dobre čitateľných a ovládateľných memotecnických pomôcok, ako napríklad ADD a MOV (príkazy jazyka Assembler).

Časom boli vyvinuté jazyky vyššej úrovni, ako BASIC a COBOL. Tieto jazyky umožnili programátorom pracovať s kódom, ktorý sa podobal (väčšinou anglickým) slovám a vetám, napríklad Let I = 100. Tieto vety boli potom prostredníctvom interpreterov a kompilátorov preložené opäť do strojového jazyka.

Interpreter je program, ktorý preloží a mení inštrukcie programového kódu priamo na strojový kód konkrétnej akcie. Kompilátor kód preloží do podoby takzvaného objektového súboru, ktorý ešte nie je spustiteľný. Tento krok sa nazýva kompilácia. Potom kompilátor spustí zostavovací program - linker, ktorý objektové súbory zostaví do spustiteľné programu. Vo fáze objektového súboru ešte nie sú známe adresy premenných a funkcií. Linker zaisťuje nahradenie relatívnych adries adresami absolútnymi a prevedie odkazy na príslušné funkcie knižníc.

Vzhľadom k tomu, že interpreter kód číta a ihneď ho prevádza, je pre programátorov pomerne jednoduché s interpreterom pracovať. Dnes sa väčšina interpretujúcich programov označuje ako skripty a interpreter samotný sa označuje ako skriptové jadro (Script Engine).

V niektorých jazykoch, napríklad vo Visual Basicu, sa interpreter nazýva behová (runtimová) knižnica. V Jave sa označuje termínom virtuálny stroj (Virtual Machine, VM), ale v tomto prípade je virtuálny stroj súčasťou prehliadača (napríklad MS Internet Explorer).

Kompilátory so sebou prinášajú krok naviac tým, že umožňujú kompiláciu zdrojového kódu (ktorý je ľudom zrozumiteľný) do objektového kódu (ktorý je zrozumiteľný stroju). Tento krok je naviac nepohodlný, ale skompilované programy bežia veľmi rýchlo, pretože časovo náročná úloha preloženia zdrojového kódu do strojového jazyka sa prevedie raz (v dobe kompilácie) a pri spustení programu sa už nevyžaduje.

Ďalšou výhodou kompilácie je aj to, že spustiteľný program je možné šíriť a púšťať aj medzi užívateľmi, ktorý žiadny kompilátor nemajú. Interpretované jazyky ku svojmu spusteniu potrebujú interpreter.

Kompilátory sa väčšinou označujú aj ako IDE (Intrgrated Development Environment), pretože obsahujú aj textové editory, do ktorých sa píše kód, a ten je možné následne skompilovať. Programy, ktoré budeme písať my, budú mať príponu .*c alebo .*h, pretože ak má súbor príponu .*c, kompilátor predpokladá, že sa jedná o program napísaný v jazyku C. V prípade problémov si pozrite dokumentáciu vášho prekladača.

Aby sme mohli začať skutočne programovať, musíme si zaobstarať nejaký kompilátor, ktorých je internete naozaj dostatok. Vymenujeme si aspoň dva najznámejšie, ktoré sú určené pre OS Windows.

Microsoft Visual C++ - jedná sa o jeden z najpopulárnejších, ale aj najkvalitnejších kompilátorov na trhu. Obsahuje veľa podporných funkcii, prepracovaného pomocníka, v ktorej nájdete naozaj všetko, čo by ste chceli, alebo potrebovali vedieť. Online verziu tohto pomocníka nazývaného MSDN si môžete pozrieť na stránkach http://www.msdn.com

Jedná sa o komerčnú záležitosť, ale Microsoft uvoľnil verziu MS Visual C++ 2005 Express Edition(súčasť MS Visual 8), ako voľne dostupné vývojárske prostredie, ktoré je k dispozícii po registrácii na stránkach MS.

BloodShed DevC++ - jedná sa o veľmi vhodný kompilátor, ktorý je dostupný úplne zdarma na oficiálnych stránkach.

Samozrejme, ešte existuje celá rada kompilátorov, ktoré si môžete zaobstarať. Ja však budem využívať MS Visual C++ EE.

V ďalšom dieli si napíšeme náš prvý program v jazyku C, ktorý si podrobne vysvetlíme, aby sme plne pochopili, ako pracujú programy napísane v C. Budete potrebovať kompilátor, a chuť učiť sa. Pokiaľ by ste mali nejaké nejastnosti ohľadne Vášho kompilátora, určite využite pomocníka, ktorý je k nemu dodaný.

V prípade nejakých námietok, otázok, či pripomienok, môžete využiť sekciu komentáre. Určite Vám rád pomôžem.

×Odeslání článku na tvůj Kindle

Zadej svůj Kindle e-mail a my ti pošleme článek na tvůj Kindle.
Musíš mít povolený příjem obsahu do svého Kindle z naší e-mailové adresy kindle@programujte.com.

E-mailová adresa (např. novak@kindle.com):

TIP: Pokud chceš dostávat naše články každé ráno do svého Kindle, koukni do sekce Články do Kindle.

Hlasování bylo ukončeno    
0 hlasů
Google
Autor programuje v C/C++, má skúsenosti s HTML, CSS. Rád športuje, počúva hudbu, a zabáva sa s kamarátmi.

Nové články

Obrázek ke článku Stavebnice umělé inteligence 1

Stavebnice umělé inteligence 1

Článek popisuje první část stavebnice umělé inteligence. Obsahuje lineární a plošnou optimalizaci.  Demo verzi je možné použít pro výuku i zájmovou činnost. Profesionální verze je určena pro vývojáře, kteří chtějí integrovat popsané moduly do svých systémů.

Obrázek ke článku Hybridní inteligentní systémy 2

Hybridní inteligentní systémy 2

V technické praxi využíváme často kombinaci různých disciplín umělé inteligence a klasických výpočtů. Takovým systémům říkáme hybridní systémy. V tomto článku se zmíním o určitém typu hybridního systému, který je užitečný ve velmi složitých výrobních procesech.

Obrázek ke článku Jak vést kvalitně tým v IT oboru: Naprogramujte si ty správné manažerské kvality

Jak vést kvalitně tým v IT oboru: Naprogramujte si ty správné manažerské kvality

Vedení týmu v oboru informačních technologií se nijak zvlášť neliší od jiných oborů. Přesto však IT manažeři čelí výzvě v podobě velmi rychlého rozvoje a tím i rostoucími nároky na své lidi. Udržet pozornost, motivaci a efektivitu týmu vyžaduje opravdu pevné manažerské základy a zároveň otevřenost a flexibilitu pro stále nové výzvy.

Obrázek ke článku Síla týmů se na home office může vytrácet. Odborníci radí, jak z pracovních omezení vytěžit maximum

Síla týmů se na home office může vytrácet. Odborníci radí, jak z pracovních omezení vytěžit maximum

Za poslední rok se podoba práce zaměstnanců změnila k nepoznání. Především plošné zavedení home office, které mělo být zpočátku jen dočasným opatřením, je pro mnohé už více než rok každodenní realitou. Co ale dělat, když se při práci z domova ztrácí motivace, zaměstnanci přestávají komunikovat a dříve fungující tým se rozpadá na skupinu solitérů? Odborníci na personalistiku dali dohromady několik rad, jak udržet tým v chodu, i když pracovní podmínky nejsou ideální.

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý