Elhuyar. Zientzia eta Teknika
ren ale honetan eta hurrengoetan azaltzen segituko dugun C lengoaia k azken urteotan oso hedapen handia lortu du, gaur egun informatikaren munduan murgiltzen garenontzat bera ezagutzea ezinbestekoa delarik. Adibideetan oinarritutako ikuspegi praktikoa duen artikulu-sail honen bidez lengoaiaren oinarriak aurkeztuko ditugu, baina goi-mailako beste lengoaiaren bat (BASIC, PASCAL, FORTRAN, etab.) ezagutzen dela suposatuz eta programazio egituratua bultzatuz, hau da, programa zailak azpiprograma errazagotan edo funtziotan banatuz.
Hurrengo kapituluak:
C lengoaia 1972.ean D. Ritchiek sortu zuen AT T-ko Bell laborategietan UNIX sistema eragilea garatzen ari zen proiektuaren barruan. Jatorriz sistemen programazioari zuzendutako lengoaia izanik (UNIX izan bait zen goi-mailako lengoaiaz programatutako lehen sistema) eta aplikazio-programetan ere erabiltzen bada ere, C-ren aplikazio-esparru arruntena pakete eta programa estandarren garapenerako programazioa da. Beraz editore, datu-base bidezko sistema, grafiko zein gestio-pakete asko C-z garatzen dira. Horren arrazoia ondoko ezaugarri hauetan datza:
Kontrako ezaugarriak ere baditu: alde batetik programatzaileek oso zorrotz jokatzen ez badute, programak oso kriptikoak eta interpretaezinak izan daitezke. Bestetik, konpiladoreak ez du asko egiaztatzen.
Beraz, erroreak detektatzea eta zuzentzea zaila gertatzen da (azken honetarako debugger programek gero eta gehiago laguntzen dute).
Esan bezala, C lengoaia hau adibideen bitartez azalduko dugu, adibide hauek Microsoft C konpiladorearen bidez itzuli ondoren probatuta egongo direlarik. Dena den lengoaiarekin hasi baino lehen komenigarria da 1. irudian azaltzen diren faseak gogoratzea: problemaren definizioa, algoritmoaren diseinua, iturburu-programaren edizioa, konpilazioa, estekaketa (link) eta azkenik proba.
Aurretik esandakoa gogoratuz C lengoaia sinplea izan arren oso liburutegi handia du, bertan sarrera/irteerako prozedurak, funtzio aritmetiko eta grafikoak eta beste errutina asko daudelarik. Horren gain, programazio egituratuan laguntzen duen konpilazio banatua bultzatuko dugu. Konpilazio-mota hau erabiltzean, programatzaileak bere liburutegia bere objektu-moduluak bertan gordez edukiko du. Ondorioz, kontutan hartu behar den konpilazio-estekaketaren eskema 2. irudian agertzen dena da.
C lengoaian main ( ) hitz-gakoaz hasten da beti programa nagusia.
{ eta } ikurrek funtzio baten gorputzaren hasiera eta bukaera adierazten dute eta gorputzaren sententzia guztiak ; ikurraz bukatzen dira. 3. irudian ondoren aztertuko dugun programa erraz bat aurkezten dugu.
printf
eta scanf dira irteera eta sarrera bideratzen dituzten liburutegi estandarreko funtzioak (parentesiek parametroak mugatzen dituzte). Horien barruan %s string (karaktere-katea) formatuaren adierazlea da eta \n lerro-bukaerarena. Beste formatuak ere onartzen dira; adibidez, %d formatu hamartarra, %c karakterea, %f erreala eta %e idazkera zientifikoa.
main ( ) /* lehen programa */char izena [20]
erazagupen-sententzia da. Bertan izena aldagaia definitzen da 20 karaktereko taula bezala. Datu-motak eta dagozkien erazagupenak hurrengo zenbakian aztertuko ditugu. /* eta */ karaktere-pareek iradokizun edo ohar bat mugatzen dute. Beraz, tartean dagoena ez da konpilatuko.
Azpimarratzekoa da konpiladoreak maiuskulak eta minuskulak bereizten dituela, eta adibidez, izena eta IZENA aldagai desberdinak liratekeenez, kode osoa minuskulaz idaztea gomendatzen da konstante parametrizatuak eta datu-mota berriak salbu, hauek maiuskulaz idatzi ohi dira eta.
Programa editatu ondoren honako urrats hauek eman behar dira programaren proba lortu arte.
Microsofteko konpiladoreaz PC batean:
$ msc
programa
$ link programa
$ programa
UNIX Sistema Eragileaz berriz, ondoko hauek
$ cc
-o programa programa. c
$ programa
Ikaslearen txokoa Hemen C ikastaroa segitzen dutenen galderak eta proposamenak azaldu eta komentatu egingo ditugu. Parte hartzeko idatzi Elhuyarrera. "C programazio–lengoaia"
Gipuzkoa |