Cours d introduction au C++
52 pages
Français

Cours d'introduction au C++

Le téléchargement nécessite un accès à la bibliothèque YouScribe
Tout savoir sur nos offres
52 pages
Français
Le téléchargement nécessite un accès à la bibliothèque YouScribe
Tout savoir sur nos offres

Description

Introduction au C++Guillaume CharpiatDecember 7, 2006Avant-proposCe cours d’introduction au C++ est, comme son nom l’indique, un coursd’introduction: il ne pretend pas donner une liste exhaustive des possibiliteso ertes par le C++ mais seulement un avant-gout.ˆ D’autres cours/polysdisponibles en ligne sont plus adaptes au perfectionnement des connaissancesen C++.Ce cours est par ailleurs pour l’instant incomplet: la toute n, constituesde chapitres moins indispensables, n’a pas encore ete redigee.Bonne lecture !1 La memoireAvoir une idee du fonctionnement d’un ordinateur aide beaucoup a pro-grammer correctement. C’est un passage oblige pour tous ceux qui desirentcomprendre ce qu’est un pointeur.En simpli ant, un ordinateur peut se resumer a une partie memoire ousont stockees les informations et a son processeur qui se charge de modi erla memoire selon les instructions recues .La programmation est donc l’art de donner des instructions e caces quivont gerer la memoire de fa con optimale, de fa con lisible et pratique, ens’appuyant sur des outils construits par d’autres programmeurs.Dans ce chapitre sont presentees les notions fondamentales de variable,pointeur et reference.guillaume.charpiat arrob@s ens.fr11.1 Variables, adresses et contenusLa memoire de l’ordinateur peut ˆetre vue comme un tres grand espacedecoupe en cases. Pour s’y retrouver, les di erentes cases de cet espaceont ete numerotees, chaque ...

Sujets

Informations

Publié par
Nombre de lectures 24
Langue Français

Extrait

Introduction au C++ Guillaume CharpiatDecember 7, 2006
Avant-propos Ce cours d’introduction au C++ est, comme son nom l’indique, un cours dintroduction:ilnepr´etendpasdonnerunelisteexhaustivedespossibilit´es oertesparleC++maisseulementunavant-gouˆt.Dautrescours/polys disponiblesenlignesontplusadapte´sauperfectionnementdesconnaissances en C++. Cecoursestparailleurspourlinstantincomplet:latouten,constitu´es dechapitresmoinsindispensables,napasencore´et´ere´dig´ee. Bonne lecture !
1Lame´moire Avoiruneide´edufonctionnementdunordinateuraidebeaucoup`apro-grammercorrectement.Cestunpassageoblige´pourtousceuxquid´esirent comprendre ce qu’est un pointeur. Ensimpliant,unordinateurpeutsere´sumer`aunepartieeriome´mou` sontstocke´eslesinformationseta`sonprocesseurqui se charge de modifier lam´emoireselonlesinstructionsrecues. ¸ La programmation est donc l’art de donner des instructions efficaces qui vontge´rerlam´emoiredefa¸conoptimale,defac¸onlisibleetpratique,en s’appuyant sur des outils construits par d’autres programmeurs. Danscechapitresontpre´sente´eslesnotionsfondamentalesdevariable, pointeuretfee´ercne´r. guillaume.charpiat arrob@s ens.fr
1
1.1 Variables, adresses et contenus Lam´emoiredelordinateurpeuteˆtrevuecommeuntr`esgrandespace d´ecoupe´encases.Poursyretrouver,lesdi´erentescasesdecetespace on t´ete´num´erote´es,chaquecaseporteainsiuneadresse. Lorsquelonconnaıˆtladressedunecase,onpeutdemanderdallercon-sulterlecontenudelacaseenquestion.Onpeute´galementbienentendu modifier le contenu de cette case. Unevariabledansleprogrammerepr´esenteenquelquesorteunecasede lam´emoire.Toutevariableporteunnomquipermetdelidentierdansle programme,etposs`edeuneadressequide´signelacasequiluiestassoci´ee. Pour regarder lavaleurnorise`a-dest-e,ciablravenudcontenu, il faut donc allerdanslame´moirejusqu`alacased´esigne´eparladressedecettevariable, puislirelecontenudecettecase.Demeˆmepourmodierlavaleurdela variable. Laquantit´edem´emoirer´eserve´epourunevariable,cest-`a-direlataille ,asiqu¸tde´criredanscettecase, delacaseassocie´einelafacondeliree d´ependdutypedecontenuquelonsattenda`ytrouver.Eneetenpratique unecaseestforme´eduncertainnombredebitsqui peuvent prendre les valeurs0et1.Ilfautdoncquelorsquelonacce`dea`cettecaseonconnaisse le nombre debits(c-`a-dlataileledalacese)qteuchsaonlprernteirete´ correctementcequia´et´ecod´edanscettesuitede0etde1.Parexempleles nombresentierspositifs,lesnombresavecvirgule,lesnombresne´gatifs,les chaˆsdecaract`eres,etc.,sonttousrepr´esent´esaunalpardes0etdes1, ıne ¸esinformationsntpaslamˆeme. maisbiene´videmmentlafacondecoderces Letypedecontenudunevariable,duquelde´pnd¸ e la facon de stocker la valeur de cette variable, est donc primordial. On l’appelle letypede la variable. Avant d’utiliser une variable il faut lacl´ederareserde,cid-a`-tsice´rper queltype Cetteest cette variable.dcl´eatarnioeurdepemrela`tdrotani r´eserverunecasedanslame´moireayantlesbonnesproprie´t´es(labonne taille)etdenretenirladresse,de´sormaisassoci´eeaunomdelavariable. Parexemple,silonsouhaiteutiliserunevariablecense´erepr´esenterun nombre entier, il faut tout d’abord lui donner un nom, disonsx, ainsi que pr´ecisersontype.Letypelepluscourantpourde´signerunnombreentier est le typeinteplunn´ed.DastarrunaseocarodsteselsnUn.iseldeteypst programmeilfaudraainsi´ecrire: int x; avantlatoutepremie`reutilisationdexafin que l’ordinateur sache ce que repr´esentex-tnemomecse`D.c´edutaconpel`a,deeerssldarea`xgrace a ˆ `
2
lope´rateurprendreladressedenomme´&. L’adresse dexest ainsi&x. Connaissant l’adressead’une variable, par exemplea = &x, on peut acce´der`asoncontenugraˆcea`lop´erateurprendrelecontenudenomm´e *L.unetnoceesacaledoterm´nue´eaest ainsi*a, ou encore*&x. Donnons un exemple simple. Soientxetydeux entiers, valant respec-tivement 4 et 5. On voudrait connaˆıtre leur somme et l’appelerz. La d´eclarationetlinstructionsuivantes: int x; x = 4; permettentde´entimm´exc-(r´de-d`anecasequeserveruairua creer un er no un contenu de typeint, et d’associer au nomxse)tecaeceterodel´mun puisdeluiaecterlavaleur4(c-a`-dderemplirlacasenu´ot´e&xavec mer e uncoderepre´sentantlenombre4).Demˆ eme: int y; y = 5; Etenn,grˆacea`lope´rateur+qui est en fait une fonction prenant deux ar-guments(undevantluietlautrederri`ere)quiretournelasommedesdeux entiers en question: int z; z = x + y; Cettederni`ereinstructionproce`dedelafac¸onsuivante:lirelecontenude la variablexet celui de la variableye´reetpmroiaeremntunautreentiercr, (nommons-lewcontdeuxedessommrs-ep,iunesu)snadquleonelcr´elait copier la valeur dew´eroacasenumc-(ledunetnoceld-a`&w) dans la case nume´ro&z, et enfin effacer la variablew(c´eitilda--`dsulptstuenucuauqeni libe´rerlacasenume´ro&wenas´eumronidneuuseccalr,ceqapasuin&z puisque ce sont deux cases distinctes). Lordinateurex´ecuteralesinstructionsdanslordrequelonlesluia fournies.Dupointdevueduprogrammeur,d´eclarerxavantyou inverse-mentnapasdimportance,ilfautjustebienpensera`de´clarerlesvariables avantdeslesutiliser.Lemorceaudeprogrammeci-dessuspeutdonceˆtre ´´ it: reecr int x; int y; int z; x = 4; y = 5; z = x + y; ouencore,indi´eremmentpourlemˆemeresultat: ´ int z;
3
  • Univers Univers
  • Ebooks Ebooks
  • Livres audio Livres audio
  • Presse Presse
  • Podcasts Podcasts
  • BD BD
  • Documents Documents