Fondamenti linguaggio C

download Fondamenti linguaggio C

of 6

Transcript of Fondamenti linguaggio C

  • 8/19/2019 Fondamenti linguaggio C

    1/13

     

    C dIfacaGafca 

    Lgagg C: Idefca, dcaae e defe Vaab T d

    da fdaea Ca Se d c I/eeeae

    Pf. M. Re

  • 8/19/2019 Fondamenti linguaggio C

    2/13

  • 8/19/2019 Fondamenti linguaggio C

    3/13

    I C gagg:

    a, c e aab dae d .

    eaee a, c c e a dffeea, e ee, d a aee e

    Paca (gagg eaee a).

    3. T d da fdaea

    Pe ede ee d a e ee d ea ce eee aca. Ad ee e e e e a ea aece ce a, ae, ecc.Og d da a a a aeeae ea (cdfca baa) ce a ce e d cee dea. Taa e ga de d da cee d aae e fa aea aaa, c

    ecded daa aeeae ea acca. I ae ae, e a de e eced ecca d ce de eee a b ce cd a de added ea, a dca

    eg d a ee C (ad ee: c=a+b;).L d aab c a a cegee:

    e g aabe be deeae a ee de a ab e ee dee eaacab;

    e g aabe be deeae a a a d ea eceaa; be eae a (a e d cae) e e dee aab ae d ea

    ece e cdee.

    I d da dd : ec;

    a.

    I ec ce d aeeae fa ce da ae ce ad ee a eeaa,a ec, ecc.I a ce d aeeae fa ce daaggegae d ae ce ce adee a daa, a ace, a caea cca, ecc.U ae d ece gcaee dbe, ee ae d a eee c

    e a dee e ce. Ad ee: ae d daa c da e a (ec).

    I C ee a de ee d edef ( b) e de ecca e defe ( e

    defed).I ec ce C ee a de :

    e; ea; caae.

    I d da edef de C, ada a aeeae e, dffeea a e e e e c

    ga e e e d b ce a ea aeeae eeabae.

    ()

    I C e 3 d e c eg:

  • 8/19/2019 Fondamenti linguaggio C

    4/13

    (dcaabe e ege d , ged , ged ); (dcaabe e ege d ged , ged); (dcaabe e ege d g , ged g, ged g ).

    I ea d defe a da 2 1 a +2 1 1, de dede da cae e aeea e d bega e a aeeae.

    Aaad a ccae ea (deaee egaa a e d b c ae da ea ed aea d aeeae), ag e ege ea:

    ef() ef() ef(g); ef() >= 2 (e, ae 16 b); ef(g) >= 4 (e, ae 32 b).

    Leae ef() C a e d be cca da a aabe da d da ce g ee aace ead.I a e ce e fe ., ce defce e ca:SHRT_MIN, SHRT_MAX, INT_MIN, INT_MAX, LONG_MIN, LONG_MAXQee ca ad ee ee gaa e cae e da e da ee cadeeea d aeeae. Se fe, a egaa aee a ce fa cae

    eece e geeae d babe ee d ef/def.Se e dcaae a cae, cea e e eceee decae, ad ee 0, 10, 10, . ..G ea ab : +, , *, /, %, , !, , , , Pe a gada e f d ge/ca a e f f e caf, c ege dca d fa(de d dca decae):

    %d e %d e %d e g (c ca)

    Ad ee e aae e ce ea a def ce cee:f(%d", cae);

    ()

    I C e 3 d e ea eg: (e: ged ); (dcaabe e ege d g , ged g, ged g ).

    I ea d defe a da 0 a +2 1, de dede da cae e aeea e d bega e a aeeae.Le ca defe ce dca g ea d aeeae ce e fe . e :USHRT_MAX, UINT_MAX, ULONG_MAX ( ce `e ee 0).

    Se e dcaae a cae ce: decae: ce e e c eg; eadecae: 0A, 02F4B, . . .

    Ige/ca: ae f e caf, c ege ecfca d fa: % e e decae; % e e ae; % e e eadecae c cfe 0, . . . , 9, a, . . . , f; %X e e eadecae c cfe 0, . . . , 9, A, . . . , F.

    Pe e aee e e e g aee (ca).

  • 8/19/2019 Fondamenti linguaggio C

    5/13

    ()

    I C ea eg aeea edae ga e e e 3 : (dee ea 4 be); (dee ea 8 be); (dee ea 12 be).

    I acae ea ae caa .Le gadee e g ea d e d da ce e fe   d bea e .Ce ag e ege ea:ef(fa) = ef(dbe) = ef(g dbe)Se e dcaae a cae cea g e eceee decae USANDO SEMPRE IL PUNTOe ad a ae cefca.Ee:dbe , , , ; = 123.45; = 0.0034; = .0034; = 34.5e+20; = 34.5E+20;

    = 5.3e12;Pe a gada d aab fa edae f:

    e a %f aa e ga fa; e a %8.3f aa 8 cfe cee, d c 3 cfe deca; e a %e aa fa eeae.

    Ee:fa = 123.45;f("%f %8.3f %8.3f\", , , );S ee :123.449997 123.450 123.450 Ee:

    dbe = 123.45;f("%e %10.3e %10.3e\", , , );

    S ee :1.234500e+02 1.234e+02 1.234e+02

    S aae ace fa aa a %g (e %G) ce cege a fa caa fa a aeeeae (%e) e ea d %f.Pe a gada c caf e ca de fa ae dffeeeee %f %e.  

    I caae afaec de cdce ASCII (Aeca Sadad Cde F Ifa Iecage) cgacaee fe d e e a fe.Qe caae eg aeea C edae a dcaae d aab d ca.U cdce aca ad g caaee e.Ad ee cdce ASCII aca a caaee # e decae 35 e ae eee 0 9 dea a aea e deca da 48 a 57.Ad ee, ae eee a dea a aea a aca e deca da 97 a 122. ae cdae ce caae C eee a ce e, e cda a cdea fa caaee ed ae e cdce.I C e 3 d caae:

    ; (aeea cee a 2);

    .

    I ged ed ged ca eaaee aeea ce e.Aee, ca dede ece da cae e eee a def ce ged e ged.

  • 8/19/2019 Fondamenti linguaggio C

    6/13

    Tcaee ae ef(ca) = ef() e ef(ca) ae 8 b.T g ea def (+, , *, /, %, , !, , , , ) ag caae.Aee: e eeae c eee d dae caae.Se ad ee =a e =b aa a e (>) ea. Qe be ec C ede ce d ce 97 (e a e cdce ASCII) ed ce d ce 98!Ad ee e a aabe caaee ea a egee e ((>96)AND(

  • 8/19/2019 Fondamenti linguaggio C

    7/13

    '\"' " (ace d)'\0' (caaee NULL)

    Le d c de f ecfca de ecd ae cac de eee effea.

    La agg ae dee , ce' dee ee ege da ; ( ega).La a a egee:eee;

    ..1 L'eee e' ae.

    ..2 I ; ( e ga) e' d e.

    I ae de'eee ee aca, ee d fdaeae aa g cedfca a dee aab aee d ea. G effe caea aa ceaee a ceega eega a ccea e.

    Ee:

    ;

    Qe ca de' ed eg e' c adde a a ceda a e, a

    gaa debba eege aca ae.

    I C bcc eaa edae ' dee aee gaffe de e a a eea d .E' be dcaae dee aab ca a'e d bcc d C. I bcc eee ea de a a acee: e dcaa dee aab ca eg edaaee a aee a eeced a ae eegbe de bcc. dcaa L'eg de bcc faa aa:

    ca d ee d (e ca c a a eea 'ee d aee a e); defe de c d a fe.

    Ee 1: a, b;.... e; /* ae dcaaa de bcc */e = a;a = b;b = e; /* Aee: da a aabe e cea d eee */

    Ee 2:

    /* bcc */

    Vag e a ege d b: e b da dea dcaae f aa fe debcc c aaeg; e, e aab ca acd (eded acceb) e aab e gba,

    c dcaae bcc ee 

  • 8/19/2019 Fondamenti linguaggio C

    8/13

    I C ee a de de : c IF

    c SWITCH

    E c da a eee e /de/e/ee bcc d cdce (caa "a" de 'f).Le de fe ce c eeae a a eaa a c IF e ege:1 ca:

    f (eee)e_1

    2 ca:

    f (eee)e_1

    ee

    e_2e_1 ee eega e eee, a a aaa aee a effe caea, a ae e (c e); ae e eee a ae fa (ce' gae a e) ee eegae_2, e eee.

    Ne ca d , a ae ee ee abbaa ee a'a f a e e bcc dea ee, a ga' abbaa ad a ecedee ee.Pe gae a eggba' e' cgaa a ba e ceee deae de gaa, ae ce ecc aa de cdce.Pe eae b abga' ee IF eae, e' be ' d bcc e accdee c ' e.

    Ee 1:

    f (a > b) = 0;

    ee = 5;

    Ee 2:

    f (a > b)f (c > d)

    = 0;

    ee

    = 5; /* a > b e c b)

    f (c > d) = 0;

    ee

    = 5; /* a

  • 8/19/2019 Fondamenti linguaggio C

    9/13

    f (e2)2

    eef (e3)

    3

    ee f (e4)4

    ee5

    I c SWITCH aee ega ad de cae ca. I e d cdce aeee da.

    I c c da ecee (CASE) e da ca geeae (DEFAULT). Le ecee de cae de eee deeca.La fa ca dea a eaa a c SWITCH a egee:c (eee)cae e_cae_1:[]...cae e_cae_2:[]...defa:

    []...N.B. Lecea defa e e ad ea eaa, a, c e ae a a d ce

    eg g ecea (abe) de cae.

    L'eee ee aaa aee a effe caea ed ae a da ea, ce dee eee d e (ca, , g) ee cfa c e ee ca acae ae cae.I ca d cdea c ee aa ae ad ea acae, e ca f a eede'e SWITCH (d f a aggge dea aee d ca de'e).Se ae de'eee cde a ea dee ee ca, aa c ee afeaa a e acaa aa abe defa, e ege f a aggge de ee de'e SWITCH.

    Se ee a abe defa ecfcaa, a SWITCH ea edaaee.E' ee 'eae de c SWITCH.Ta g aee ce cg c de SWITCH e' ee ' de'e d a BREAK. Qadae e ee caa, ea caa ee de'eece de'e SWITCH ed c aaa'e ccea.

    Ee:// cegg de d caaeca c; _cfe, _eaa, _a;...c = ....; // a c caaee da eaae

    c (c)cae '0':

    _cfe = _cfe + 1;

  • 8/19/2019 Fondamenti linguaggio C

    10/13

    bea;cae '1':

    _cfe = _cfe + 1;bea;.....

    cae '9':

    _cfe = _cfe + 1;bea;

    cae ' ':_eaa = _eaa + 1;bea;

    cae '\':_eaa = _eaa + 1;bea;

    cae '\':_eaa = _eaa + 1;bea;

    defa:

    _a = _a + 1;...

    I C ee a de e :

    c WHILE c DOWHILE c FOR

    E c geeae, da c eee g a c e eae.La a a a egee:

    e (eee)e

    e:

    e (eee)e1e2....e

    L'eee ee aaa e, e a ae de da 0 (e), ee eega 'e ccea (ce aceeee e bcc d , aee dea dae aee gaffe). Ua a ce e'a eaa, 'eee ee aaa aee e, e aee ea, ee 'e. C eca f aad 'eee a ae 0 (fa), e e ca c afece a'e ccea, a e.

    U cc e eee eeg e e, c 'eee ebbe eee faa g a a a. Saa d cc a : a d eege cc aa a cde.

  • 8/19/2019 Fondamenti linguaggio C

    11/13

    I bea cae dee e eae ce eae cc f. Qe accade e e eed gaae e ace cde eea aa eee de e ae ee ea.A'e de bcc d ' cae 'e BREAK ce, e eega, ca ee de WHILEc 'e CONTINUE ce, a a caa, fa deeae ccea de cc, ca ceece edaa dea ae d c de cc.I ca d cc ea, eabe e BREAK e CONTINUE a fea cc ' ee.

    Ee: eg a e e ce ee ee da aea f a ad ee e e.

    #cde a() , a;a = 0; = 1; // ae ae (ee e eae e e)e ( != 0)caf ("%d" , &);

    a = a + ;f("La a e' %d", a);

    I c DOWHILE eea a egee a:

    de

    e (eee);

    Pe g cc ee eega e, ee aaa 'eee.Se a ea (dea da e) cc ee aa, ae 'e DOWHILE a ee.Le ee eega ae a a: fa c de cc a : a daae a cde eege cc. Qd c de cc ee eeg ee ae a aA dee eec bcc. Ae d bcc d cae 'e BREAKce, e eega, ca ee de DOWHILE ce' 'e CONTINUE ce, a a caa, fa deeae ccea de cc, ca c eece edaa dea ae d c de cc.I ca d cc ea, eabe e BREAK e CONTINUE a fea cc ' ee.

    I c FOR eaee a c WHILE, a cga e ca c

    e d ea SIA NOTO A PRIORI.Pe ee, e dee cade a a da ce a ee N eee, aa e cc FOR. Ne ca c debba cae a cedee aee d dgae e fc ee e e a a e,aa e c WHILE a e d ea a .I c FOR c e egee d:

    f ( e1 ; e2 ; e3 )e

    Se e eae bcc d cdce, c FOR c e egee d:

    f ( e1 ; e2 ; e3 )

    e1e2...

  • 8/19/2019 Fondamenti linguaggio C

    12/13

    e

    c: e1 eee  e, e2 eee ), e3 eee  .

    L'eee eee d aae e aab d cc e ee eega a a a, a d aa aa

    eae.

    Ee: cae 0.Scceaee ad ea, ee aaa 'eee de cc e, e ea a ae de da 0, ee eega'e ce cce c de cc ( bcc d fa aee gaffe).Ee: cae 9.A ee de'eece de c de cc, ee aaa 'eeecee, d e e aggae a dee aab d cc.Ee: cae cae + 1.Qd, aa aee 'eee de cc e c a. I cc ee fc aa ce faa

    'eee de cc (ae 0).Ae d bcc d cae 'e BREAK ce, e eega, ca ee de FORce' 'e CONTINUE ce, a a caa, fa deeae ccea de cc d aeeaa e3.I ca d cc ea, eabe e BREAK e CONTINUE a fea cc ' ee

    Obe: dcaae a aabe ea, aega ae e aaa a de.U ece gaa ce eege ee a egee:#cde a()

    ; = 3;f("%d", );

    Nea ae dcaaa dcaa a aabe ce aabe ea (). Nea a ga dea ae eeca

    aega ae 3 aa aabe .La ea ga de a caa a fe f ce eee d aae a aabe aaa (aa dea deaga) a eae. Aa a dea ga eee a ga caaa . Ea a c ddefe ce d ce dea aabe debba eee aa. Ad ee %d gfca ce eaaa ce e: a ca e 3.Ce g , e ce:f("He WORLD");cae a :He WORLD

    Se ce ce:f("I ae ce e: %d", )

    cae a :I ae ce e: 3Qe accade c a fe f aa a ga d c e ce ae a dea ga ce a

    c % ( e ca %d) a dee aab aa aa dea dea ga ( ae d ).

  • 8/19/2019 Fondamenti linguaggio C

    13/13

    Obe: dcaae a aabe ea, eggee ae daa aea e ca a aabe.U ece gaa ce eege ee a egee:#cde a()

    ;f("e e e :");caf("%d", &);f(" ae ea e %d", ); /* aa e c */

    Nea ae dcaaa dcaa a aabe ce ea (). Nea a ga dea ae eeca aa eagg e ee affc caca ce g a ceded d baee e e a aea.Le ccdeaacaee c a ee de a .La ea ga de a caa a fe caf ce eee d cae e e da aea ea aabe . Aaa dea ga c ce dee eee e da e daa aea. I e ca dcae %d

    dca ce dee eee e ce e e.Qea cdeae baae. Ifa e ee dgae 1024 a aea eg daa ee de  , ea ebbe eeae e da a ce e e 1024 a ace ce a ga ca dacaae 1, 0, 2 e 4. Idcad %d, ge g b eeae d ce da debba eee ea ce e e.Aa dea dea ga eee d de ae e dee eee ea (& gfca ad d).Aee, ce cee caf("%d", ); ea &.La ga de a aa ae e. I e d be effeae a efca ecd e

    da g dece a dea fe f.