C (hääldus inglispäraselt [sii]) on standardiseeritud programmeerimiskeel, mille lõid 1970. aastate alguses Brian Kernighan, Dennis Ritchie ja Ken Thompson eesmärgiga leida sobiv keel uue operatsioonisüsteemi UNIX programmeerimiseks. Tänapäeval saab C programmeerimiskeelt kasutada praktiliselt igas operatsioonisüsteemis, ning sellest on saanud üks populaarsemaid keeli, mida kasutatakse laialdaselt nii süsteemi- kui ka rakendustarkvara loomisel. Programmeerimiskeelel C on palju järeltulijaid, tähelepanuväärseim neist on C++, mis peamise vahega toob C-sse klassid.
Ajalugu
Keele tekkimine on tihedalt seotud ja paralleelne operatsioonisüsteemi UNIX loomisega 1969–1973 firma AT&T Bell Labs-i arenduskeskuses. C eellasteks on BCPL ja B programmeerimiskeeled. Esimene C-s kirjutatud suurem rakendus oli 1973. aasta suvel kirjutatud arvuti PDP-11 UNIX-i tuum (kernel). Järgnevatel aastatel arendas meeskond keelt edasi, keskendudes peamiselt ja andmetetüüpide arendamisele, ning C-s kirjutatud programmide teistele riistvara platvormide ülekantavusega seotud küsimustele. Esimene avalikult keelt tutvustav raamat, B. Kernighani ja D. Ritchie: The C Programming Language, ilmus 1978. aastal, ning sellest sai mitteametlik C standard järgmiseks kümnendiks. Esimesena uutest riistvaraplatvormidest kanti C üle arvutitele Interdata 8/32 ja DEC VAX 11/780. Keele kiire levik algas 1980. aastate alguses, esimene ametlik ANSI standard võeti vastu 1989. aasta lõpus (ANSI 89 C).
C-l on mitu otsest järglast, näiteks Objective C, C++, Concurrent C , C*, Modula 3 ja Eiffel.
Süntaks
Lihtsaim programm C-keeles näeb välja nii:
int main()
{
return 0;
}
See programm ei tee mitte midagi muud, kui väljastab operatsioonisüsteemile veakoodi 0 (mis tavaliselt tähendab vigadeta väljumist).
Hello, World!
Hello world on C-keeles järgmine:
#include <stdio.h>
int main(void)
{
printf("Tere, maailm!\n");
return 0;
}
See programm väljastab teksti "Tere, maailm!".
Võrdlus teiste keeltega
Paljud tänapäevased programmeerimiskeeled on pärit kaugest sugulasest C-st. Mitmetel on osaliselt sarnane süntaks – C++, C#, Java, JavaScript, PHP, Perl. Algajatele on C enamasti raskelt omandatav viitade, mäluhalduse ja stringide töötlemise keerukuse tõttu.
Kasutusalad
Kuna C on riistvarale lähedane keel, siis kasutatakse seda operatsioonisüsteemide draiverite (ehk ajurite) ning operatsioonisüsteemide tuumade (kernel) kirjutamiseks, näiteks BSD, Linux, Solaris, Windows jpt.
Vaata ka
Välislingid
Kompilaatorid
Loojad
- http://www.cs.bell-labs.com/who/bwk/ Brian Kernighan
- http://www.cs.bell-labs.com/who/dmr/ Dennis M. Ritchie
- http://www.cs.bell-labs.com/who/ken/ Ken Thompson
Ajalugu
Koodinäited
- The International Obfuscated C Code Contest – rahvusvaheline programmeerimisvõistlus hägustatud C keeles