[[oktatas:programozás:c:c_fejlesztői_környezet_kialakítása|< C fejlesztői környezet kialakítása]] ====== Fejlesztés C nyelven ====== * **Szerző:** Sallai András * Copyright (c) Sallai András, 2014 * Licenc: GNU Free Documentation License 1.3 * Web: http://szit.hu ===== A C nyelvről ===== A C magas szintű nyelvekhez tartozik, ezen csoporton belül viszont a legalacsonyabb szintűként tartjuk számon. A C megvalósításokat a fordítós technika jellemzi. A fordítók az adott operációs rendszerre natív programot készítenek. A C nyelvet eszközmeghajtók, operációs rendszerek, programozására szokás használni, de általános célúnak tekinthető. ===== Objective-C ===== Objektum Orientált programozási nyelv. A C nyelvbe a Smalltalk nyelvből hozták az objektum központúságot. Az Apple fő programozási nyelve. Az 1980-as évek elején Brad Cox és Tom Love hozta létre, a [[wp>Stepstone|Stepstone]] vállalatnál, amely szoftverfejlesztésekkel foglalkozott az ezredfordulóig. 1995-ben a [[wp>NeXT|NeXT]] megszerezte a Obective-C jogait. A **GCC képes lefordítani** a Objective-C forrásokat is, ha telepítjük a gobjc aktuális csomagját: apt-get install gobjc-4.6 ===== GCC ===== A [[wp>GNU_Compiler_Collection|GCC]] a GNU C Compiler szavakból alkotott rekurzív betűszó. GNU C Compiler Eredetileg GNU C Compiler szavakból alkotott betűszó volt. Ekkor csak C nyelven tudott fordítani. Később a GCC-t képessé tették C++, Fortran, Objective-C, Ada, Java és Pascal nyelvű programok fordítására is. A nevét ezért megváltoztatták: GNU Compiler Collection ===== Clang ===== A [[wp>Clang|Clang]] egy fordítói előtétprogram. Az [[wp>LLVM|LLVM]] fordítóval szokás használni, amely Low Level Virtual Machine rövidítése, és alacsony szintű virtuális gépnek fordítható. Az LLVM valójában tetszőleges programozási nyelvhez felhasználható, fordítási idejű, linkelési idejű, futási idejű és holtidejű („idle-time”) optimalizálására kitalált fordítói infrastruktúra. ===== SDCC ===== Az [[http://sdcc.sourceforge.net/|SDCC]] fordító egy ANSI C fordító, amely jól optimalizálható és több célprocesszor meghatározható számára, **mikrovezérlők** programozására. Néhány használható mikroprocesszor: * Intel MCS51 * 8031, 8032, 8051, 8052 stb. * Maxim DS80C390; ezek variánsai * Freescale (korábban Motorola) * HC08 based (hc08, s08) * Zilog Z80 * MCUs (z80, z180, gbz80, Rabbit 2000/3000, Rabbit 3000A, TLCS-90) * STMicroelectronics STM8