
kurzus-kód: IP-18IMPPROGEG
Mottó:
“C is a razor sharp tool, with which one can create an elegant and efficient program or a bloody mess” - from The Practice of Programming
A tárgy hivatalos honlapja
A tárgy célja
A hallgató legyen tisztában az alapvető imperatív programozási nyelvi fogalmakkal és technikákkal és azokat alkalmazni tudja C nyelven:
- Mi az hogy statikus típusrendszer
- Mi a különbség a fordítás + szerkesztés vs. interpretálás közt
- Mik az alaptípusok és hogyan ábrázoljuk őket (char, int, double)
- Hogyan értékeljük ki a kifejezéseket (precedencia, asszociativitás, mellékhatások)
- Mik az alapvető utasítások (vezérlőszerkezetek) az imperatív nyelvekben
- Alapvető memória-fogalmak, pointer és használata
- Mi a láthatóság és az élettartam
- Mi a függvény, a rekurzió, milyen paraméterátadási módok léteznek
- Milyen összetett adatszerkezetek léteznek (felsorolási típus, rekord, únió)
- Hogyan működik a dinamikus memóriakezelés, mi a memória-elszivárgás
- Alapvető C programozási technikák
- Alapvető C standard könyvtári függvények és használata
Órarend 2025 ősz
Előadások
| időpont | terem | oktatók | elérhetőség |
|---|---|---|---|
| Hétfő 10.00-12.00 | D 0-822 Mogyoródi József | Porkoláb Zoltán | gsd@inf.elte.hu |
| Hétfő 12.00-14.00 | D 0-821 Bolyai János | Porkoláb Zoltán | gsd@inf.elte.hu |
| Kedd 10.00-12.00 | D 2-502 | Kozsik Tamás | kto@inf.elte.hu |
Estis előadás
| időpont | terem | oktató | elérhetőség |
|---|---|---|---|
| Hétfő 18:30-20:00 | D 0-804 Lóczy Lajos | Pataki Norbert | patakino@elte.hu |
English language lectures
| time | place | lecturer | contact |
|---|---|---|---|
| Monday 12.00-14.00 | D 0-804 Lóczy Lajos | Brunner Tibor | bruntib@ik.elte.hu |
| Monday 14.00-16.00 | D 0-822 Mogyoródi József | Brunner Tibor | bruntib@ik.elte.hu |
A félév során tervezett előadások menete a következő:
- Programozási paradigmák, imperatív programozás, a C nyelv alapjai. link slides video
- A C programok szerkezete, alaptípusok, statikus típusrendszer. link1 link2 slides video
- Operátorok, kifejezések, kifejezések kiértékelése. link slides video-from-2024
- Utasítások. link slides video
- Memóriakezelés, tömbök, pointerek. link slides video
- Deklarációk, láthatóság, élettartam szabályai. link slides video
- Függvények, paraméterátadás. link slides video
- Összetett adatszerkezetek. link slides video
- Dinamikus memóriakezelés. link slides video
- A szabványos C könyvtár slides video
- Az eddig tanultak gyakorlati összefoglalása. link video
- Unix utility implementációja. link video
- Egy egyszerű alkalmazás implementációja. link video
- Enkapszuláció, interfész és implementáció. Típusabsztrakció. link
Tantárgyi követelmények
Olvasnivaló

Nyékyné Gaizler Judit (szerk.): Programozási nyelvek. Kiskapu kiadó (2003). ISBN-13: 9789639301467.

Brian W. Kernighan, Dennis Ritchie: The C Programming Language, 2nd Edition. Prentice Hall (April 1, 1988). ISBN-13: 978-0131103627.

Brian W. Kernighan, Rob Pike: The Practice of Programming, 1st Edition. Addison-Wesley Professional Computing Series (April 1, 1999). ISBN-13: 978-0201615869.
Draft standard
N1570 Committee Draft — April 12, 2011 ISO/IEC 9899:201x
On-line tananyag
A fenti órarend melletti linkeken elérhető.