New Immissions/Updates:
boundless - educate - edutalab - empatico - es-ebooks - es16 - fr16 - fsfiles - hesperian - solidaria - wikipediaforschools
- wikipediaforschoolses - wikipediaforschoolsfr - wikipediaforschoolspt - worldmap -

See also: Liber Liber - Libro Parlato - Liber Musica  - Manuzio -  Liber Liber ISO Files - Alphabetical Order - Multivolume ZIP Complete Archive - PDF Files - OGG Music Files -

PROJECT GUTENBERG HTML: Volume I - Volume II - Volume III - Volume IV - Volume V - Volume VI - Volume VII - Volume VIII - Volume IX

Ascolta ""Volevo solo fare un audiolibro"" su Spreaker.
CLASSICISTRANIERI HOME PAGE - YOUTUBE CHANNEL
Privacy Policy Cookie Policy Terms and Conditions
C (ohjelmointikieli) – Wikipedia

C (ohjelmointikieli)

Wikipedia

Kuva:-
Paradigma proseduraalinen
Tyypitys heikko, staattinen
Yleinen suoritusmalli -
Muistinhallinta manuaalinen
Julkaistu 1972
Kehittäjä Dennis Ritchie
Viimeisin vakaa versio -
Viimeisin julkaisupäivä
Viimeisin kehitysversio -
Merkittävimmät toteutukset
Vaikutteet B, BCPL
Vaikuttanut C++
Murteet
Käyttöjärjestelmä
WWW-sivut
Uutisryhmä comp.lang.c

(muokkaa)

C-ohjelmointikieli on Dennis Ritchien 1970-luvun alussa UNIX-käyttöjärjestelmälle kehittämä imperatiivinen ja sittemmin standardisoitu ohjelmointikieli. Se perustuu Ken Thompsonin kehittämään B-kieleen.

C-kieli tarkoitettiin alun perin pelkästään järjestelmäohjelmointiin, mutta se on saavuttanut suosiota myös sovellusohjelmointikielenä. C yleistyi Unixin yleistyessä ja nykyisin käytännössä kaikki järjestelmäalustat käyttävät C-kieltä järjestelmäkielenään. C-kielen merkitys näkyy myös siinä, että monet kielet muistuttavat C:tä avainsanoiltaan ja syntaksiltaan, vaikka niiden toimintaperiaate ja käyttötarkoitus olisi erilainen. Jotkin uudemmat ohjelmointikielet, kuten C++, C# ja Java, pohjautuvat C-kieleen. Ne eivät kuitenkaan ole syrjäyttäneet C-kieltä täysin. Joidenkin korkean tason ohjelmointikielten toteutukset käyttävät C-kieltä välikielenä.

C-kielellä on seuraavia ominaispiirteitä:

  • Yksinkertainen ydinkieli, jonka lisäksi keskeisiä toimintoja toteutettu kirjastoissa
  • Minimalistinen määrä varattuja avainsanoja
  • Keskeisenä periaatteena rakenteellinen proseduraalinen ohjelmointi
  • Yksinkertainen ALGOL-sukulaiskielten tapainen tyyppijärjestelmä
  • Matalan tason pääsy tietokoneen muistiin osoittimien avulla
  • Parametrien välitys aliohjelmille joko arvoina tai viitteinä käyttämällä osoittimia
  • Funktio-osoittimet, jotka mahdollistavat yksinkertaisten jatkumoiden ja monimuotoisuuden (polymorfismi) käytön
  • Leksikaalinen muuttujien määrittelyalue (lexical variable scoping)
  • Tietueet, käyttäjän luomat datatyypit (struct-avainsana) joiden avulla toisiinsa liittyviä muuttujia voidaan käsitellä yhdessä
  • Esikääntäjä (C Preprocessor), jonka avulla voidaan mm. yhdistää useissa tiedostoissa sijaitsevaa lähdekoodia ja määritellä makroja

Yksinkertaisuuden tavoittelun vuoksi C-kielestä puuttuu suora tuki monille muista kielistä löytyville ominaisuuksille. Näitä ovat mm. vahva tyypitys (type safety), roskienkeräys, funktioiden ja operaattoreiden ylikuormitus, tuki säikeille, listojenkäsittely ym. Tosin useimmat näistä ominaisuuksista voidaan ohjelmoida C-kielellä epäsuorasti.

[muokkaa] Standardit

Alkuperäinen epävirallinen standardi C-ohjelmointikielestä tunnetaan nimellä K&R, kahden C-kielen alkuperäisen kuvauksen kirjoittajien mukaan (Ritchie ja Kerninghan).

Uusin standardi on ISO/IEC vuoldeta 1999, joka tunnetaan nimellä C99. Se pohjautuu sitä edeltäneeseen ANSI C standardiin vuodelta 1989, joka tunnetaan myös nimellä C89. Käytännössä kaikki merkittävimmät kääntäjät tukevat uusimpaa C99 standardia (vuoden 2007 ensimmäisellä neljänneksellä), vaikka sen toteus saattaa joltain piirteiltään olla edelleen epätäydellinen.

ISO/IEC ja ANSI standardit koskevat paitsi itse kielen semantiikkaa ja syntaksia, myös asianomaiselle alustalle käännettyjä peruskirjastoluokkia, jotka tulevat yleensä kunkin valmistajan toimittaman kääntäjän mukana (ks. C-standardikirjastot).

[muokkaa] Esimerkkiohjelma

Esimerkkiohjelma tulostaa rivin ”Hei maailma!” vakiotulostevirtaan, joka on yleensä tietokoneen näyttöpääte.

#include <stdio.h>

int main ( void )
{
        printf ( "Hei maailma!\n" );

        return 0;
}

[muokkaa] Aiheesta muualla

Wikibooks
Wikikirjastossa on aihe:

Static Wikipedia (no images)

aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - bcl - be - be_x_old - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - co - cr - crh - cs - csb - cu - cv - cy - da - de - diq - dsb - dv - dz - ee - el - eml - en - eo - es - et - eu - ext - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gan - gd - gl - glk - gn - got - gu - gv - ha - hak - haw - he - hi - hif - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kaa - kab - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mdf - mg - mh - mi - mk - ml - mn - mo - mr - mt - mus - my - myv - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - quality - rm - rmy - rn - ro - roa_rup - roa_tara - ru - rw - sa - sah - sc - scn - sco - sd - se - sg - sh - si - simple - sk - sl - sm - sn - so - sr - srn - ss - st - stq - su - sv - sw - szl - ta - te - tet - tg - th - ti - tk - tl - tlh - tn - to - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu -

Static Wikipedia 2007 (no images)

aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - bcl - be - be_x_old - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - co - cr - crh - cs - csb - cu - cv - cy - da - de - diq - dsb - dv - dz - ee - el - eml - en - eo - es - et - eu - ext - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gan - gd - gl - glk - gn - got - gu - gv - ha - hak - haw - he - hi - hif - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kaa - kab - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mdf - mg - mh - mi - mk - ml - mn - mo - mr - mt - mus - my - myv - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - quality - rm - rmy - rn - ro - roa_rup - roa_tara - ru - rw - sa - sah - sc - scn - sco - sd - se - sg - sh - si - simple - sk - sl - sm - sn - so - sr - srn - ss - st - stq - su - sv - sw - szl - ta - te - tet - tg - th - ti - tk - tl - tlh - tn - to - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu -

Static Wikipedia 2006 (no images)

aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - bcl - be - be_x_old - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - co - cr - crh - cs - csb - cu - cv - cy - da - de - diq - dsb - dv - dz - ee - el - eml - eo - es - et - eu - ext - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gan - gd - gl - glk - gn - got - gu - gv - ha - hak - haw - he - hi - hif - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kaa - kab - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mdf - mg - mh - mi - mk - ml - mn - mo - mr - mt - mus - my - myv - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - quality - rm - rmy - rn - ro - roa_rup - roa_tara - ru - rw - sa - sah - sc - scn - sco - sd - se - sg - sh - si - simple - sk - sl - sm - sn - so - sr - srn - ss - st - stq - su - sv - sw - szl - ta - te - tet - tg - th - ti - tk - tl - tlh - tn - to - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu

Static Wikipedia February 2008 (no images)

aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - bcl - be - be_x_old - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - co - cr - crh - cs - csb - cu - cv - cy - da - de - diq - dsb - dv - dz - ee - el - eml - en - eo - es - et - eu - ext - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gan - gd - gl - glk - gn - got - gu - gv - ha - hak - haw - he - hi - hif - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kaa - kab - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mdf - mg - mh - mi - mk - ml - mn - mo - mr - mt - mus - my - myv - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - quality - rm - rmy - rn - ro - roa_rup - roa_tara - ru - rw - sa - sah - sc - scn - sco - sd - se - sg - sh - si - simple - sk - sl - sm - sn - so - sr - srn - ss - st - stq - su - sv - sw - szl - ta - te - tet - tg - th - ti - tk - tl - tlh - tn - to - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu