home *** CD-ROM | disk | FTP | other *** search
/ For Beginners & Professional Hackers / cd.iso / docum / tc.doc / c6.doc < prev    next >
Encoding:
Text File  |  1988-04-07  |  47.3 KB  |  811 lines

  1.                                                                        
  2.                    âïÇéÇ 5. ÄæìÄéì¢à æéàäàìꃠĠƒç¢èà æê
  3.           
  4.           Åα¿∩Γ¡« ó¿ñÑΓ∞, τΓ« óδ ñ«íα὿ß∞ ¿ ñ« φΓ«⌐ ú½áóδ. é ú½áóÑ 4 ¼δ
  5.      »«¬áºá½¿ óá¼ Γ«½∞¬« ¼á½πε τáßΓ∞ ó«º¼«ª¡«ßΓÑ⌐ æ¿, Γ«½∞¬« ñ½∩ ó«ºíπª-
  6.      ñÑ¡¿∩  ½εí«»δΓßΓóá.  ÆÑ»Ñα∞  óδ  ú«Γ«óδ »«úαπº¿Γ∞ß∩ ó ú½πí¿¡δ φΓ«ú«
  7.      ∩ºδ¬á, ó τѼ ¼δ óá¼ ¿ »«¼«ªÑ¼ ó φΓ«⌐ ú½áóÑ.
  8.                         èαáΓ¬«Ñ ß«ñÑαªá¡¿Ñ ú½áóδ 5
  9.           é ñá¡¡«⌐ ú½áóÑ «ßóÑΘáεΓß∩ ß½ÑñπεΘ¿Ñ ó«»α«ßδ:
  10.           - ßΓαπ¬Γπαδ ñá¡¡δσ, ó¬½ετá∩ ßß佬¿, ¼áßß¿óδ ¿ ßΓαπ¬Γπαδ;
  11.           - «»ÑαáΓ«α switch;
  12.           - ¬«¼á¡ñδ »«Γ«¬á  π»αáó½Ñ¡¿∩,  ó¬½ετá∩  return,  break,  goto,
  13.             continue ¿ πß½«ó¡δ⌐ «»ÑαáΓ«α (?:);
  14.           - ßΓ¿½∞ »α«úαá¼¼¿α«óá¡¿∩ ¡á æ¿, «ß«íÑ¡¡« »« «Γ¡«ΦÑ¡¿ε ¬ ¡Ñ¬«-
  15.             Γ«αδ¼ αáßΦ¿αÑ¡¿∩¼ φΓ«ú« ∩ºδ¬á;
  16.           - ¡Ñ¬«Γ«αδÑ "½«óπΦ¬¿", ó ¬«Γ«αδÑ τáßΓ« »«»áñáεΓ »α«αá¼¼¿ßΓδ;
  17.                            Äíº«α ßΓαπ¬Γπα ñá¡¡δσ
  18.           é »αÑñδñπΘÑ⌐ ú½áóÑ ¼δ αáßß¼«Γαѽ¿ «ß¡«ó¡δÑ Γ¿»δ ñá¡¡δσ,  ΓᬿÑ
  19.      ¬á¬ τ¿ß½á µÑ½δÑ ¿ ß »½áóáεΘÑ⌐ Γ«τ¬«⌐, ß¿¼ó«½δ ¿ ¿σ óáα¿á¡Γδ. é φΓ«⌐
  20.      ú½áóÑ ¼δ αáß߬áªÑ¼, ¬á¬ ßΓα«¿Γ∞ »α¿ »«¼«Θ¿ φΓ¿σ φ½Ñ¼Ñ¡Γ«ó ßΓαπ¬Γπαδ
  21.      ñá¡¡δσ  ¿½¿  ¡áí«αδ  φ½Ñ¼Ñ¡Γ«ó  ñá¡¡δσ. ì« ó¡áτá½Ñ αáßß¼«Γα¿¼ í«½ÑÑ
  22.      »«ñα«í¡« «ñ¡π ¿º «ß¡«ó¡δ󠬫¡µÑ»µ¿⌐ ∩ºδ¬á æ¿ - ßß佬¿ ¿½¿ π¬áºáΓѽ¿.
  23.                                  ô¬áºáΓѽ¿
  24.           ü«½∞Φ¿¡ßΓó« »ÑαѼѡ¡δσ, αáßß¼áΓα¿óáóΦ¿σß∩ ñ« ß¿σ »«α, ß«ñÑαªá-
  25.      ½¿  ñá¡¡δÑ, Γ.Ñ. Γπ ßá¼πε ¿¡Σ«α¼áµ¿ε, ¬«Γ«απε «íαáíáΓδóá½á »α«úαá¼-
  26.      ¼á. ê¡«úñá íδóáÑΓ ¡Ñ«íσ«ñ¿¼« º¡áΓ∞, úñÑ ¡áσ«ñ¿Γß∩ ¡Ñ¬«Γ«α«Ñ  º¡áτÑ-
  27.      ¡¿Ñ, á ¡Ñ ßἫ º¡áτÑ¡¿Ñ. ê¼Ñ¡¡« ñ½∩ φΓ«ú« ¿ ¡πª¡δ π¬áºáΓѽ¿.
  28.           àß½¿ óδ ¡Ñ πóÑαÑ¡δ ó ßó«¿σ º¡á¡¿∩σ «í áñαÑßáσ ¿ »á¼∩Γ¿, »α¿ó«-
  29.      ñ¿¼δÑ ¡¿ªÑ ßóÑñÑ¡¿∩ »α¿ú«ñ∩Γß∩ óá¼. ä½∩ σαá¡Ñ¡¿∩ »α«úαá¼¼ ¿  ñá¡¡δσ
  30.      ó  ¬«¼»∞εΓÑαÑ ¿¼ÑÑΓß∩ »á¼∩Γ∞, ¡áºδóáѼá∩ «»ÑαáΓ¿ó¡«⌐ »á¼∩Γ∞ε. æá¼«⌐
  31.      ¼Ñ½∞τá⌐ΦÑ⌐ Ññ¿¡¿µÑ⌐ »á¼∩Γ¿ ∩ó½∩ÑΓß∩  í¿Γ,  ¼¿¬α«φ½Ñ¬Γα«¡¡á∩  ßσѼá,
  32.      ¬«Γ«αá∩  ¼«ªÑΓ  σαá¡¿Γ∞ ó ßÑíÑ /»«¬á ó¬½ετÑ¡« »¿Γá¡¿Ñ/ «ñ¡« ¿º ñóπσ
  33.      ó«º¼«ª¡δσ º¡áτÑ¡¿⌐, ¬«Γ«α«Ñ «íδτ¡« ¿¡ΓÑα»αÑΓ¿απÑΓß∩ ¬á¬ ¡«½∞ ¿ Ññ¿-
  34.      ¡¿µá.
  35.           é«ßѼ∞  í¿Γ«ó  ß«ßΓáó½∩εΓ  «ñ¿¡  íá⌐Γ. ê¼Ñ¡πεΓß∩ ΓᬪѠ¿ í«½ÑÑ
  36.      ¬απ»¡δÑ úαπ»»δ í¿Γ; «íδτ¡«, ñóá  íá⌐Γá  ¡áºδóáεΓß∩  ß½«ó«¼,  τÑΓδαÑ
  37.      íá⌐Γá  ¡áºδóáεΓß∩  ñ½¿¡¡δ¼ ß½«ó«¼, ¡á IBM PC 16 íá⌐Γ ¡áºδóáεΓß∩ »á-
  38.      αáúαáΣ«¼.
  39.           èáªñδ⌐ íá⌐Γ ó »á¼∩Γ¿ ¬«¼»∞εΓÑαá ¿¼ÑÑΓ ßó«⌐ ß«íßΓóÑ¡¡δ⌐  áñαÑß,
  40.      ΓᬠªÑ ¬á¬ ¿¼ÑÑΓ ßó«⌐ áñαÑß ½εí«⌐ ñ«¼ ¡á ½εí«⌐ π½¿µÑ. ì«, ó «Γ½¿τ¿Ñ
  41.      «Γ ñ«¼«ó, »«ß½Ññ«óáΓѽ∞¡δÑ íá⌐Γδ ¿¼ÑεΓ »«ß½Ññ«óáΓѽ∞¡δÑ áñαÑßá. àß-
  42.      ½¿  ñá¡¡δ⌐  íá⌐Γ  ¿¼ÑÑΓ  áñαÑß n, Γ«úñá »αÑñδñπΘ¿⌐ íá⌐Γ ¿¼ÑÑΓ áñαÑß
  43.      n-1, á »«ß½ÑñπεΘ¿⌐ -  n+1.
  44.           ô¬áºáΓѽ∞ - φΓ« »ÑαѼѡ¡á∩, ß«ñÑαªáΘá∩ áñαÑß ¡Ñ¬«Γ«α«ú« ñá¡¡«-
  45.      ú«, á ¡Ñ ßἫ ñá¡¡«Ñ. èᬠÑú« ¼«ª¡« ¿ß»«½∞º«óáΓ∞? é«-»Ñαóδσ, π¬áºá-
  46.      Γѽ∞ ¼«ªÑΓ π¬áºδóáΓ∞ ¡á αẽ¿τ¡δÑ ñá¡¡δÑ ¿ ¡á  αẽ¿τ¡δÑ  ßΓαπ¬Γπαδ
  47.      ñá¡δσ.  êº¼Ñ¡Ñ¡¿Ñ¼ áñαÑßá, ß«ñÑαªáΘÑú«ß∩ ó π¬áºáΓѽÑ, ¼«ª¡« ¼á¡¿»π-
  48.      ½¿α«óáΓ∞ /»α¿ßóá¿óáΓ∞, ßτ¿ΓδóáΓ∞, ¿º¼Ñ¡∩Γ∞/ ¿¡Σ«α¼áµ¿Ñ⌐ ó αẽ¿τ¡δσ
  49.      ∩τÑ⌐¬áσ.  Æá¬¿¼  «íαẫ¼  ¼«ª¡«,  ¡á»α¿¼Ñα, »α«⌐Γ¿ ßó∩ºá¡¡δ⌐ ß»¿ß«¬
  50.      ßΓαπ¬Γπα »α¿ »«¼«Θ¿ «ñ¡«ú« π¬áºáΓѽ∩.
  51.           é«-óΓ«αδσ, »α¿ »«¼«Θ¿ π¬áºáΓѽÑ⌐ ¼«ª¡« ß«ºñáóáΓ∞  ¡«óδÑ  »ÑαÑ-
  52.      ¼Ñ¡¡δÑ  ó »α«µÑßßÑ óδ»«½¡Ñ¡¿∩ »α«úαá¼¼δ. ƒºδ¬ æ¿ »«ºó«½∩ÑΓ αѺÑαó¿-
  53.      α«óáΓ∞ ¡Ñ¬«Γ«α«Ñ ¬«½¿τÑßΓó« »á¼∩Γ¿ /ó íá⌐Γáσ/, ó«ºóαáΘá∩ áñαÑß, ¬«-
  54.      Γ«αδ⌐  ¼«ª¡« σαá¡¿Γ∞ ó π¬áºáΓѽÑ. ¥Γ«Γ »α«µÑßß ¿ºóÑßΓÑ¡ ¬á¬ ñ¿¡á¼¿-
  55.      τÑ߬«Ñ αѺÑαó¿α«óá¡¿Ñ. æ Ñú« »«¼«Θ∞ε »α«úαἼᠠ¼«ªÑΓ  ¿ß»«½∞º«óáΓ∞
  56.      óßε ¿¼ÑεΘπεß∩ ¡á ¬«¼»∞εΓÑαÑ »á¼∩Γ∞.
  57.  
  58.           é-ΓαÑΓ∞¿σ,  π¬áºáΓѽ∞  ¼«ªÑΓ  íδΓ∞ ¿ß»«½∞º«óá¡ ñ½∩ «íαáΘÑ¡¿∩ ¬
  59.      αẽ¿τ¡δ¼ ∩τÑ⌐¬á¼ ¡Ñ¬«Γ«α«⌐ ßΓαπ¬Γπαδ ñá¡¡δσ, ¬á¬ ¡á»α¿¼Ñα,  ¼áßß¿-
  60.      óá, ßΓ᫬¿ ¿½¿ ßΓαπ¬Γπαδ. ìá ßἫ¼ ñѽÑ, π¬áºáΓѽ∞ π¬áºδóáÑΓ Γ«½∞¬«
  61.      ¡á «ñ¡π ∩τÑ⌐¬π »á¼∩Γ¿ /ßÑú¼Ñ¡Γ:  ß¼ÑΘÑ¡¿Ñ/,  ¿¡ñѬ߿απ∩  π¬áºáΓѽ∞,
  62.      ¼«ª¡« «íαáΘáΓ∞ß∩ ¬ ½εí«¼π ¿º »«ß½ÑñπεΘ¿σ íá⌐Γ.
  63.           ÆÑ»Ñα∞  óδ, íѺ ß«¼¡Ñ¡¿∩, πíѪñÑ¡δ, τΓ« π¬áºáΓѽ¿ πñ«í¡δ ó ¿ß-
  64.      »«½∞º«óá¡¿¿. èᬠªÑ ¿σ ¿ß»«½∞º«óáΓ∞ ó æ¿? é«-»Ñαóδσ, ¿σ ¡áñ«  «íΩ∩-
  65.      ó¿Γ∞. Éáßß¼«Γα¿¼ ß½ÑñπεΘπε »α«úαá¼¼π.
  66.           
  67.           1-áñαÑß  ivar; 2-ß«ñÑন¼«Ñ ivar; 3- ß«ñÑন¼«Ñ iptr; 4-π¬áºδ-
  68.      óáѼ«Ñ º¡áτÑ¡¿Ñ.
  69.           é ñá¡¡«⌐ »α«úαἼѠ«íΩ∩ó½Ñ¡δ ñóÑ »ÑαѼѡ¡δÑ: ivar ¿ iptr. ÅÑα-
  70.      óá∩,  ivar,  ∩ó½∩ÑΓß∩  µÑ½«⌐ »ÑαѼѡ¡«⌐, Γ.Ñ. «¡á ß«ñÑαª¿Γ º¡áτÑ¡¿∩
  71.      Γ¿»á int. éΓ«αá∩, iptr, ∩ó½∩ÑΓß∩ π¬áºáΓѽѼ  ¡á  µÑ½πε  »ÑαѼѡ¡πε,
  72.      Γ.Ñ. «¡á ß«ñÑαª¿Γ áñαÑß º¡áτÑ¡¿∩ Γ¿»á int. î«ª¡« ßαáºπ ß¬áºáΓ∞, τΓ«
  73.      iptr - φΓ« π¬áºáΓѽ∞, »«Γ«¼π τΓ« »α¿ «íΩ∩ó½Ñ¡¿¿ φΓ«⌐ »ÑαѼѡ¡«⌐ »Ñ-
  74.      αÑñ  ¡Ñ⌐  íδ½á »«ßΓáó½Ñ¡á ºóѺñ«τ¬á. çóѺñ«τ¬á ó æ¿ ¡áºδóáÑΓß∩ ¬«ß-
  75.      óÑ¡¡δ¼ «»ÑαáΓ«α«¼ /*/.
  76.           é ñá¡¡«⌐ »α«úαἼѠßñѽá¡δ ß½ÑñπεΘ¿Ñ »α¿ßó«Ñ¡¿∩:
  77.           - áñαÑß »ÑαѼѡ¡«⌐ ivar »α¿ßó«Ñ¡ »ÑαѼѡ¡«⌐ iprt;
  78.           - µÑ½«Ñ º¡áτÑ¡¿Ñ 421 »α¿ßó«Ñ¡« »ÑαѼѡ¡«⌐ ivar.
  79.           ÇñαÑß »ÑαѼѡ¡«⌐ ivar »«½πτáÑΓß∩ »α¿ »«¼«Θ¿ áñαÑß¡«ú« «»ÑαáΓ«-
  80.      αá /&/, π»«¼∩¡πΓ«ú« ó »αÑñδñπΘÑ⌐ ú½áóÑ.
  81.           àß½¿  óδ ¡á»ÑτáΓáÑΓÑ ¿ ºá»πßΓ¿ΓÑ φΓπ »α«úαá¼¼π, ÑÑ óδó«ñ íπñÑΓ
  82.      óδú½∩ñÑΓ∞ »α¿¼Ñα¡« Γá¬:
  83.           
  84.           ÅÑαóδÑ ñóÑ ßΓ᫬¿ ß««íΘáεΓ ¡á¼ áñαÑß ¿  ß«ñÑন¼«Ñ  »ÑαѼѡ¡«⌐
  85.      ivar.  ÆαÑΓ∞∩ »«¬áºδóáÑΓ áñαÑß, ß«ñÑαªáΘ¿⌐ß∩ ó »ÑαѼѡ¡«⌐ iptr. èá¬
  86.      ó¿ñ¡«, φΓ« áñαÑß »ÑαѼѡ¡«⌐ ivar, Γ.Ñ. Γ«⌐ ∩τÑ⌐¬¿ »á¼∩Γ¿, ó ¬«Γ«α«⌐
  87.      óáΦá  »α«úαἼᠠαÑΦ¿½á ß«ºñáΓ∞ »ÑαѼѡ¡πε ivar. Å«ß½Ññ¡ÑÑ αáß»Ñτá-
  88.      Γá¡¡«Ñ º¡áτÑ¡¿Ñ - φΓ« ñá¡¡δÑ, σαá¡∩Θ¿Ñß∩ »« φΓ«¼π áñαÑßπ, Γ.Ñ. º¡á-
  89.      τÑ¡¿Ñ πªÑ »α¿ßó«Ñ¡¡«Ñ »ÑαѼѡ¡«⌐ ivar.
  90.           ÄíαáΓ¿ΓÑ  ó¡¿¼á¡¿Ñ  ¡á  ΓαÑΓ¿⌐ ó맮ó Σπ¡¬µ¿¿ printf, ó ¬«Γ«α«¼
  91.      óδαáªÑ¡¿Ñ iptr ¿ß»«½∞ºπÑΓß∩ ñ½∩ »«½πτÑ¡¿∩ ßó«Ñú« ß«ñÑন¼«ú«,  Γ.Ñ.
  92.      áñαÑßá  »ÑαѼѡ¡«⌐  ivar.  é  »«ß½Ññ¡Ñ¼ ó맮óÑ printf ñ½∩ »«½πτÑ¡¿∩
  93.      ñá¡¡δσ, ºá»¿ßá¡¡δσ »« φΓ«¼π áñαÑßπ, ¿ß»«½∞ºπÑΓß∩ óδαáªÑ¡¿Ñ *iptr.
  94.           Åα¿óÑñѼ φΓπ ªÑ »α«úαá¼¼π ó ¡Ñ߬«½∞¬« ¿º¼Ñ¡Ñ¡¡«¼ ó¿ñÑ:
  95.           
  96.           é φΓ«⌐ »α«úαἼѠáñαÑß »ÑαѼѡ¡«⌐ ivar Γ«τ¡« ΓᬠªÑ »α¿ßóá¿óá-
  97.      ÑΓß∩  »ÑαѼѡ¡«⌐  iptr,  ¡«  º¡áτÑ¡¿Ñ  421 »α¿ßóá¿óáÑΓß∩ »ÑαѼѡ¡«⌐
  98.      *iptr, á ¡Ñ ivar. ÉѺπ½∞ΓáΓ »α¿ φΓ«¼ »«½πτ¿Γß∩ Γ«Γ ªÑ ßá¼δ⌐.  Å«τÑ-
  99.      ¼π? Å«Γ«¼π τΓ« óδαáªÑ¡¿Ñ *iptr=421 áíß«½εΓ¡« φ¬ó¿óá½Ñ¡Γ¡« óδαáªÑ¡¿ε
  100.      ivar=421, á φΓ«, ó ßó«ε «τÑαÑñ∞, óÑα¡« »«Γ«¼π,  τΓ«  ¿ñÑ¡Γ¿Σ¿¬áΓ«αδ
  101.      ivar  ¿ iptr «Γ¡«ß∩Γß∩ ¬ «ñ¡«⌐ ¿ Γ«⌐ ªÑ ∩τÑ⌐¬Ñ »á¼∩Γ¿, ß½Ññ«óáΓѽ∞-
  102.      ¡«, «íá φΓ¿ óδαáªÑ¡¿∩ ºá»¿ßδóáεΓ º¡áτÑ¡¿Ñ 421 ó φΓπ ∩τÑ⌐¬π.
  103.                        ä¿¡á¼¿τÑ߬«Ñ αѺÑαó¿α«óá¡¿Ñ
  104.           êº¼Ñ¡¿¼ ¡áΦπ »α«úαá¼¼π ÑΘÑ αáº:
  105.           
  106.           é φΓ«⌐ óÑαß¿¿ «»πΘÑ¡« «íΩ∩ó½Ñ¡¿Ñ »ÑαѼѡ¡«⌐ ivar. é¼ÑßΓ« φΓ«ú«
  107.      »«∩󿽫ß∞ »α¿ßó«Ñ¡¿Ñ »ÑαѼѡ¡«⌐ iptr ¡Ñ¬«Γ«α«ú« º¡áτÑ¡¿∩, ó«ºóαáΘá-
  108.      Ñ¼«ú« Σπ¡¬µ¿Ñ⌐ malloc, «íΩ∩ó½Ñ¡¡«⌐ ó Σá⌐½Ñ ALLOC.H /«Γßεñá  »«∩ó½Ñ-
  109.      ¡¿Ñ  ñ¿αÑ¬Γ¿óδ #include ó ¡áτá½Ñ »α«úαá¼¼δ/. çáΓѼ »ÑαѼѡ¡«⌐ *iptr
  110.      »α¿ßóá¿óáÑΓß∩ º¡áτÑ¡¿Ñ 421, áñαÑß«¼ ¬«Γ«α«ú« ∩ó½∩ÑΓß∩ iptr. Åα¿ ºá-
  111.      »π߬ѠφΓ«⌐ »α«úαá¼¼δ º¡áτÑ¡¿Ñ iptr íπñÑΓ «Γ½¿τáΓ∞ß∩ «Γ »«½πτáóΦÑú«-
  112.      ß∩ αá¡ÑÑ, á º¡áτÑ¡¿Ñ *iptr íπñÑΓ ΓѼ ªÑ - 421.
  113.  
  114.           èᬿѠñÑ⌐ßΓó¿∩ óδ»«½¡∩ÑΓ ß½ÑñπεΘ¿⌐ «»ÑαáΓ«α:
  115.                     iptr = (int*)malloc(sizeof(int))
  116.           ÉáºíÑαѼ Ñú« »« »«α∩ñ¬π.
  117.           éδαáªÑ¡¿Ñ sizeof(int) ó«ºóαáΘáÑΓ  ¬«½¿τÑßΓó«  íá⌐Γ,  ΓαÑíπѼδσ
  118.      ñ½∩ σαá¡Ñ¡¿∩ »ÑαѼѡ¡«⌐ Γ¿»á int. ä½∩ ¬«¼»¿½∩Γ«αá Æπαí«-æ¿, αáí«Γá-
  119.      εΘÑú« ¡á IBM PC, φΓ« º¡áτÑ¡¿Ñ íπñÑΓ αáó¡« 2.
  120.           öπ¡¬µ¿∩ malloc(num) αѺÑαó¿απÑΓ num »«ß½Ññ«óáΓѽ∞¡δσ  íá⌐Γ  ¿º
  121.      ßó«í«ñ¡«⌐  /¡Ñ¿ß»«½∞ºπѼ«⌐/»á¼∩Γ¿ ¬«¼»∞εΓÑαá ¿ ó«ºóαáΘáÑΓ áñαÑß ¡á-
  122.      τá½∞¡«ú« íá⌐Γá.
  123.           éδαáªÑ¡¿Ñ (int*) «º¡áτáÑΓ, τΓ« φëàáñαÑß íπñÑΓ αáßß¼áΓα¿óáΓ∞-
  124.      ß∩  ¬á¬  π¬áºáΓѽ∞  ¡á »ÑαѼѡ¡πε Γ¿»á int. Æá¬á∩ «»Ñαᵿ∩ ¿ºóÑßΓ¡á
  125.      ¬á¬ »α¿óÑñÑ¡¿Ñ Γ¿»«ó. é ñá¡¡«¼ ß½πτáÑ Æπαí«-æ¿ ¡Ñ ΓαÑíπÑΓ ÑÑ »α¿¼Ñ-
  126.      ¡Ñ¡¿∩, ¡« ¼¡«ú¿Ñ ¬«¼»¿½∩Γ«αδ æ¿ ¿ß»«½∞ºπεΓ ÑÑ ó »«ñ«í¡δσ ß¿Γπᵿ∩σ,
  127.      ¿  »«φΓ«¼π  ÑÑ  «ΓßπΓßΓó¿Ñ  »α¿óÑñÑΓ   ¬   ß««íΘÑ¡¿ε   «í   «Φ¿í¬Ñ:
  128.      Non-portable  pointer assignment /¡Ñ»ÑαÑ¡«ß¿¼«Ñ »α¿ßó«Ñ¡¿Ñ π¬áºáΓÑ-
  129.      ½∩/.
  130.           ê, ¡á¬«¡Ñµ, φëàáñαÑß ºá»¿ßδóáÑΓß∩ ó »ÑαѼѡ¡πε iptr. éßÑ φΓ¿
  131.      ñÑ⌐ßΓó¿∩  «º¡áτáεΓ,  τΓ« óδ ñ¿¡á¼¿τÑ߬¿ ß«ºñ὿ µÑ½πε »ÑαѼѡ¡πε, ¬
  132.      ¬«Γ«α«⌐ ¼«ª¡« «íαáΘáΓ∞ß∩ »α¿ »«¼«Θ¿ ¿ñÑ¡Γ¿Σ¿¬áΓ«αá *iptr.
  133.           ôτ¿Γδóá∩  óßÑ  óδΦÑ¿º½«ªÑ¡¡«Ñ,  ¡áΦ «»ÑαáΓ«α ¼«ªÑΓ íδΓ∞ «»¿ßá¡
  134.      ß½ÑñπεΘ¿¼ «íαẫ¼: "ºáαѺÑαó¿α«óáΓ∞ ó »á¼∩Γ¿ ¬«¼»∞εΓÑαá  ñ«ßΓáΓ«τ¡«
  135.      ¼ÑßΓá  ñ½∩ σαá¡Ñ¡¿∩ »ÑαѼѡ¡«⌐ µÑ½«ú« Γ¿»á, ºáΓѼ »α¿ßó«¿Γ∞ ¡áτá½∞-
  136.      ¡δ⌐ áñαÑß ºáαѺÑαó¿α«óá¡¡«⌐ »á¼∩Γ¿ »ÑαѼѡ¡«⌐ iptr, ¬«Γ«αá∩ ∩ó½∩ÑΓ-
  137.      ß∩ π¬áºáΓѽѼ ¡á »ÑαѼѡ¡πε Γ¿»á int."
  138.           üδ½á  ½¿ »α«µÑñπαá ¡Ñ«íσ«ñ¿¼«⌐? äá. Å«τѼπ? Å«Γ«¼π τΓ« íѺ ¡ÑÑ
  139.      ¡Ñ í佫 íδ ¡¿¬á¬«⌐ úáαá¡Γ¿¿, τΓ« iptr íπñÑΓ π¬áºδóáΓ∞ ¡á  ßó«í«ñ¡δ⌐
  140.      πτáßΓ«¬  »á¼∩Γ¿. é »ÑαѼѡ¡«⌐ iptr íπñÑΓ ¡áσ«ñ¿Γ∞ß∩ ¬á¬«Ñ-Γ« º¡áτÑ-
  141.      ¡¿Ñ, ¿ óδ ¿ß»«½∞ºπÑΓÑ Ñú« ó ¬áτÑßΓóÑ áñαÑßá, ¡« ∩τÑ⌐¬á, ¡á  ¬«Γ«απε
  142.      íπñÑΓ  π¬áºδóáΓ∞  φëà áñαÑß, ¼«ªÑΓ íδΓ∞ πªÑ ºá¡∩Γá ñ½∩ ¬á¬¿σ-½¿í«
  143.      ñαπú¿σ µÑ½Ñ⌐. Åα¿ ¿ß»«½∞º«óá¡¿¿ π¬áºáΓѽÑ⌐  óßÑúñá  »α¿ñÑনóá⌐ΓÑß∞
  144.      »α«ßΓ«ú«  »αáó¿½á:  «í∩ºáΓѽ∞¡«  »α¿ßóá¿óá⌐ΓÑ áñαÑß π¬áºáΓÑ½ε »ÑαÑñ
  145.      Ñú« ¿ß»«½∞º«ó᡿Ѽ. äαπú¿¼¿ ß½«óἿ, ¡Ñ »α¿ßóá¿óá⌐ΓÑ µÑ½«Ñ º¡áτÑ¡¿Ñ
  146.      »ÑαѼѡ¡«⌐ *iptr, ¡Ñ »α¿ßó«¿ó »αÑñóáα¿Γѽ∞¡« áñαÑß »ÑαѼѡ¡«⌐ iptr.
  147.                            ô¬áºáΓѽ¿ ¿ Σπ¡¬µ¿¿
  148.           é  »αÑñδñπΘÑ⌐  ú½áóÑ  αáß߬áºδóὫß∞,  ¬á¬ «íΩ∩ó½∩Γ∞ »áαá¼ÑΓαδ
  149.      Σπ¡¬µ¿⌐.  é«º¼«ª¡«,  ΓÑ»Ñα∞ ßΓὫ í«½ÑÑ »«¡∩Γ¡δ¼, »«τѼπ ó ¬áτÑßΓóÑ
  150.      Σ«α¼á½∞¡δσ »áαá¼ÑΓα«ó, º¡áτÑ¡¿∩ ¬«Γ«αδσ  ¡Ñ«íσ«ñ¿¼«  ¿º¼Ñ¡¿Γ∞,  ¿ß-
  151.      »«½∞ºπεΓß∩ π¬áºáΓѽ¿. ä½∩ »α¿¼Ñαá αáßß¼«Γα¿¼ ß½ÑñπεΘπε Σπ¡¬µ¿ε:
  152.           
  153.           é ñá¡¡«⌐ Σπ¡¬µ¿¿ swap, «íΩ∩ó½Ñ¡δ ñóá Σ«α¼á½∞¡δσ »áαá¼ÑΓαá: á ¿
  154.      b, ∩ó½∩εΘ¿Ñß∩ π¬áºáΓѽ∩¼¿ ¡á Γ¿» int. ¥Γ« º¡áτ¿Γ, τΓ« ñ«½ªÑ¡  »ÑαÑ-
  155.      ñáóáΓ∞ß∩  áñαÑß  µÑ½«⌐  »ÑαѼѡ¡«⌐, á ¡Ñ ÑÑ º¡áτÑ¡¿Ñ. éßÑ ¿º¼Ñ¡Ñ¡¿∩
  156.      ñÑ⌐ßΓóπεΓ ¡á º¡áτÑ¡¿∩, ¡áσ«ñ∩Θ¿Ñß∩ »« »ÑαÑñáóáÑ¼δ¼ ó Σπ¡¬µ¿ε  áñαÑ-
  157.      ßá¼. Åα¿¼Ñα »α«úαá¼¼δ, óδºδóáεΘÑ⌐ Σπ¡¬µ¿ε swap:
  158.           
  159.           1-ñ«; 2-»«ß½Ñ.
  160.           
  161.           éδ ¼«ªÑΓÑ πíÑñ¿Γ∞ß∩, τΓ« φΓá »α«úαá¼¼á ñÑ⌐ßΓó¿Γѽ∞¡« »ÑαÑßΓáó-
  162.      ½∩ÑΓ ¼ÑßΓἿ º¡áτÑ¡¿∩ i ¿ j. ¥Γá  »α«úαἼᠠ¼«ªÑΓ  αáßß¼áΓα¿óáΓ∞ß∩
  163.      φ¬ó¿óá½Ñ¡Γ«¼ ß½ÑñπεΘÑ⌐ »α«úαá¼¼δ:
  164.           
  165.           é  ñá¡¡«⌐  »α«úαἼѠ αѺπ½∞ΓáΓδ »«½πτáεΓß∩, ¬«¡Ñτ¡« ªÑ, ΓÑ ªÑ
  166.      ßá¼δÑ. é맮ó swap(&i,&j) »α¿ßóá¿óáÑΓ º¡áτÑ¡¿∩  ñóπσ  ñÑ⌐ßΓó¿Γѽ∞¡δσ
  167.      »áαá¼ÑΓα«ó /i ¿ j/ ñóπ¼ Σ«α¼á½∞¡δ¼ »áαá¼ÑΓαá¼ /á ¿ b/, ºáΓѼ óδ»«½-
  168.      ¡∩ÑΓ «»ÑαáΓ«αδ »α«µÑñπαδ swap.
  169.  
  170.                            ÇñαÑß¡á∩ áα¿Σ¼ÑΓ¿¬á
  171.           ùΓ« ñѽáΓ∞, Ñß½¿ óδ σ«Γ¿ΓÑ ¿º¼Ñ¡¿Γ∞ »α«úαá¼¼π  Γᬿ¼  «íαẫ¼,
  172.      τΓ«íδ »ÑαѼѡ¡á∩ iptr π¬áºδóá½á ¡á Γα¿ µÑ½δσ »ÑαѼѡδÑ, á ¡Ñ ¡á «ñ-
  173.      ¡π? ì¿ªÑ »α¿óÑñÑ¡« «ñ¡« ¿º ó«º¼«ª¡δσ αÑΦÑ¡¿⌐.
  174.           
  175.           é¼ÑßΓ« ¿ß»«½∞º«óá¡¿∩ Σπ¡¬µ¿¿ malloc, ó φΓ«⌐ »α«úαἼѠ ¿ß»«½∞-
  176.      º«óá¡á  Σπ¡¬µ¿∩  calloc, ΓαÑíπεΘá∩ ñóπσ »áαá¼ÑΓα«ó: ¬«½¿τÑßΓó« φ½Ñ-
  177.      ¼Ñ¡Γ«ó, ñ½∩ ¬«Γ«αδσ ¡Ñ«íσ«ñ¿¼« αѺÑαó¿α«óáΓ∞ »á¼∩Γ∞, ¿ αẼÑα  ¬áª-
  178.      ñ«ú« φ½Ñ¼Ñ¡Γá ó íá⌐Γáσ. ÆÑ»Ñα∞ »ÑαѼѡ¡á∩ list π¬áºδóáÑΓ ¡á πτáßΓ«¬
  179.      »á¼∩Γ¿ αẼÑα«¼ 3σ2 íá⌐Γá, φΓ«ú« ñ«ßΓáΓ«τ¡« ñ½∩ ß«ñÑαªá¡¿∩ ΓαÑσ µÑ-
  180.      ½δσ »ÑαѼѡ¡δσ.
  181.           ÄíαáΓ¿ΓÑ  ó¡¿¼á¡¿Ñ ¡á Γα¿ ß½ÑñπεΘ¿σ «»ÑαáΓ«αá: ÅÑαóδ⌐ «»ÑαáΓ«α
  182.      óá¼ º¡á¬«¼ - φΓ« *list = 421.  Ä¡  «º¡áτáÑΓ  ß½ÑñπεΘÑÑ:  "ß«σαá¡¿Γ∞
  183.      º¡áτÑ¡¿Ñ 421 ó »ÑαѼѡ¡«⌐ Γ¿»á int, αáß»«½«ªÑ¡¡«⌐ »« áñαÑßπ, σαá¡∩-
  184.      ΘѼπß∩ ó »ÑαѼѡ¡«⌐ list".
  185.           é᪡« »«¡∩Γ∞ ß½ÑñπεΘ¿⌐ «»ÑαáΓ«α - *(list+1)=53. ìá »Ñαóδ⌐ óºú-
  186.      ½∩ñ  Ñú« ¼«ª¡« ¿¡ΓÑα»αÑΓ¿α«óáΓ∞ ß½ÑñπεΘ¿¼ «íαẫ¼:"ß«σαá¡¿Γ∞ º¡áτÑ-
  187.      ¡¿Ñ 53 ó µÑ½«⌐ »ÑαѼѡ¡«⌐, τÑ⌐ áñαÑß ºá»¿ßá¡  ó  »ÑαѼѡ¡«⌐  list."
  188.      àß½¿  íδ  φΓ« í佫 Γá¬, óá¼ »α¿Φ½«ß∞ íδ Γπú«, Γ.¬. φëàáñαÑß »«»á½
  189.      íδ »α∩¼« ó ßÑαÑñ¿¡π »αÑñδñπΘÑ⌐ µÑ½«⌐ »ÑαѼѡ¡«⌐ /¬«Γ«αá∩ ºá¡¿¼áÑΓ 2
  190.      íá⌐Γá/. ÅαÑñδñπΘÑÑ º¡áτÑ¡¿Ñ í佫 íδ »α¿ φΓ«¼ íѺó«ºóαáΓ¡« πΓÑα∩¡«.
  191.           ì« ¡Ñ íÑß»«¬«⌐ΓÑß∞, óáΦ ¬«¼»¿½∩Γ«α ¡Ñ ßñѽáÑΓ Γᬫ⌐ «Φ¿í¬¿. Ä¡
  192.      º¡áÑΓ, τΓ« list - φΓ«  π¬áºáΓѽ∞  ¡á  Γ¿»  int,  »«φΓ«¼π  óδαáªÑ¡¿Ñ
  193.      list+1  «Γ¡«ß¿Γß∩  ¬  íá⌐Γ«ó«¼π  áñαÑßπ,  «»αÑñѽ∩Ѽ«¼π  óδαáªÑ¡¿Ñ¼
  194.      list+(1*sizeof(int)), »«φΓ«¼π º¡áτÑ¡¿Ñ 53 ¡¿¬«¿¼ «íαẫ¼ ¡Ñ  ¿ß»«α-
  195.      Γ¿Γ º¡áτÑ¡¿∩ 421.
  196.           Æ«τ¡«  ΓᬠªÑ, óδαáªÑ¡¿Ñ (list+1) - φΓ«½ áñαÑß ó íá⌐Γáσ, ¬«Γ«-
  197.      αδ⌐ ¼«ªÑΓ íδΓ∞ αáºóÑα¡πΓ Γᬿ¼ «íαẫ¼: list+2*sizof(int)), »«φΓ«¼π
  198.      τ¿ß½« 1806 ºá»¿ΦÑΓß∩ ó »á¼∩Γ∞, ¡Ñ ¿ß»«αΓ¿ó »αÑñδñπΘ¿σ º¡áτÑ¡¿⌐.
  199.           é   «íΘѼ   ß½πτáÑ,  óδαáªÑ¡¿Ñ  ptr+1  «º¡áτáÑΓ  áñαÑß  »á¼∩Γ¿
  200.      ptr+(i*sizof(int)).
  201.           éóÑñ¿ΓÑ ¿ ºá»πßΓ¿ΓÑ »αÑñδñπΘπε »α«úαá¼¼π. ÉѺπ½∞ΓáΓ ñ«½ªÑ¡ »«-
  202.      ½πτ¿Γ∞ß∩ »α¿í½¿º¿Γѽ∞¡« ß½ÑñπεΘ¿¼:
  203.           List of addresses:  06AA   06AC   06AE
  204.           List of values:      421     53   1806
  205.           ÇñαÑßá  «ΓßΓ«∩Γ  ñαπú «Γ ñαπúá ¡á 2 íá⌐Γá, á ¡Ñ ¡á «ñ¿¡, ¿ óßÑ
  206.      Γα¿ º¡áτÑ¡¿∩ ß«σαá¡Ñ¡δ ó αẽ¿τ¡δσ ∩τÑ⌐¬áσ.
  207.           Å«ñóÑñѼ ¡Ñ¬«Γ«αδÑ ¿Γ«ú¿: àß½¿ óδ ¿ß»«½∞ºπÑΓÑ π¬áºáΓѽ∞ ptr ¡á
  208.      Γ¿»  type,  Γ«úñá  óδαáªÑ¡¿Ñ (ptr+i) «í«º¡áτáÑΓ áñαÑß »á¼∩Γ¿ (ptr +
  209.      (i*sizeof(type))), úñÑ  sizeof(type)  ó«ºóαáΘáÑΓ  ¬«½¿τÑßΓó«  íá⌐Γ,
  210.      ΓαÑíπѼδσ ñ½∩ σαá¡Ñ¡¿∩ »ÑαѼѡ¡«⌐ Γ¿»á type.
  211.                                  îáßß¿óδ
  212.           ü«½∞Φ¿¡ßΓó«  ∩ºδ¬«ó óδß«¬«ú« πα«ó¡∩, ó¬½ετá∩ æ¿, »«ºó«½∩εΓ «»-
  213.      αÑñѽ∩Γ∞ ¼áßß¿óδ, Γ.Ñ. ¿¡ñѬ߿α«óá¡¡δÑ ß»¿ß¬¿ ñá¡¡δσ  «»αÑñѽѡ¡«ú«
  214.      Γ¿»á.  ìá»α¿¼Ñα, »αÑñδñπΘá∩ »α«úαἼᠼ«ªÑΓ íδΓ∞ »ÑαÑ»¿ßá¡á ß½Ññπε-
  215.      Θ¿¼ «íαẫ¼:
  216.           
  217.           éδαáªÑ¡¿Ñ int list[NUMINTS] «íΩ∩ó½∩ÑΓ list ¼áß߿󫼠»ÑαѼѡ¡δσ
  218.      Γ¿»á int, αѺÑαó¿απ∩ ¼ÑßΓ« ñ½∩ σαá¡Ñ¡¿∩ ΓαÑσ Γᬿσ »ÑαѼѡ¡δσ. ÅÑα-
  219.      óá∩ »ÑαѼѡ¡á∩ «í«º¡áτáÑΓß∩ list[0], óΓ«αá∩  -  list[1],  ΓαÑΓ∞∩  -
  220.      list[2].
  221.  
  222.           ÄíΘ¿⌐ ó¿ñ «íΩ∩ó½Ñ¡¿∩ ½εí«ú« ¼áßß¿óá:
  223.           type name[size];
  224.      úñÑ  type - φΓ« Γ¿» ñá¡¡δσ, name - ¿¼∩ ¼áßß¿óá, á size - ¬«½¿τÑßΓó«
  225.      φ½Ñ¼Ñ¡Γ«ó Γ¿»á type, ß«ñÑαªáΘ¿σß∩ ó ¼áßß¿óÑ  name.  ÅÑαóδ⌐  φ½Ñ¼Ñ¡Γ
  226.      ¼áßß¿óá   íπñÑΓ   name[0],   óΓ«α«⌐   -   name[1],  á  »«ß½Ññ¡¿⌐  -
  227.      name[size-1]; «íΘ¿⌐ αẼÑα ¼áßß¿óá ó íá⌐Γáσ «»αÑñѽ∩ÑΓß∩ óδαáªÑ¡¿Ñ¼
  228.      size*(sizeof(type)).
  229.                             îáßß¿óδ ¿ ßß佬¿
  230.           æ¬«αÑÑ  óßÑú«,  óδ  πªÑ ñ«úáñ὿ß∞, τΓ« ¼áßß¿óδ ¿ ßß佬¿ «τÑ¡∞
  231.      ΓÑß¡« ßó∩ºá¡δ ¼Ñªñπ ß«í«⌐. àß½¿ óδ ºá»πßΓ¿ΓÑ »αÑñδñπΘπε  »α«úαá¼¼π,
  232.      ÑÑ óδó«ñ »«¬áªÑΓß∩ óá¼ º¡á¬«¼δ¼:
  233.           List of addresses:  163A   163C   163E
  234.           List of values:      421     53   1806
  235.           àñ¿¡ßΓóÑ¡¡«Ñ αẽ¿τ¿Ñ ºá¬½ετáÑΓß∩ ó ¡áτá½∞¡«¼ áñαÑßÑ. éßÑ ñѽ«
  236.      ó Γ«¼, τΓ« ¿¼∩ ¼áßß¿óá ¼«ª¡« ¿ß»«½∞º«óáΓ∞ ¬á¬ ßß佬π; Γ«τ¡« Γᬠ ªÑ
  237.      ¼«ª¡« ¿¡ñѬ߿α«óáΓ∞ ßß佬π, ¬á¬ ¼áßß¿ó. Å«ß¼«Γα¿ΓÑ ¡á ß½ÑñπεΘ¿Ñ ñóá
  238.      αáóÑ¡ßΓóá:
  239.           (list+i) == &(list[i])
  240.          *(list+i) == list[i]
  241.           é «í«¿σ ß½πτá∩σ óδαáªÑ¡¿Ñ ß½Ñóá φ¬ó¿óá½Ñ¡Γ¡« óδαáªÑ¡¿ε ß»αáóá,
  242.      «ñ¡« ¼«ªÑΓ ¿ß»«½∞º«óáΓ∞ß∩ ó¼ÑßΓ« ñαπú«ú«, ¡Ñºáó¿ß¿¼« «Γ Γ«ú«, «»αÑ-
  243.      ñѽѡᠻÑαѼѡ¡á∩ list ¬á¬ ßßδ½¬á ¿½¿ ¬á¬ ¼áßß¿ó.
  244.           àñ¿¡ßΓóÑ¡¡«Ñ αẽ¿τ¿Ñ, ¡áí½εñáѼ«Ñ  »α¿  «íΩ∩ó½Ñ¡¿¿  »ÑαѼѡ«⌐
  245.      ßß佬«⌐  ¿½¿  ¼áßß¿ó«¼,  ºá¬½ετáÑΓß∩  ó αѺÑαó¿α«óá¡¿¿ »á¼∩Γ¿. àß½¿
  246.      list «»αÑñѽѡᠬᬠ¼áßß¿ó, »α«úαá¼¼á áóΓ«¼áΓ¿τÑ߬¿ αѺÑαó¿απÑΓ ñ½∩
  247.      ¡ÑÑ  ΓαÑíπѼ«Ñ ¬«½¿τÑßΓó« »á¼∩Γ¿. àß½¿ ªÑ list «»αÑñѽѡᠬᬠßßδ½-
  248.      ¬á, ñ½∩ ¡ÑÑ ¡Ñ«íσ«ñ¿¼« ∩ó¡« ß«ºñáΓ∞ πτáßΓ«¬ »á¼∩Γ¿, »«½∞ºπ∩ß∞ Σπ¡¬-
  249.      µ¿Ñ⌐  calloc  ¿½¿  Ñ⌐ á¡á½«ú¿τ¡«⌐, ¿½¿ ªÑ »α¿ßó«¿Γ∞ φΓ«⌐ »ÑαѼѡ¡«⌐
  250.      áñαÑß αá¡ÑÑ ºáαѺÑαó¿α«óá¡¡«ú« πτáßΓ¬á.
  251.                             îáßß¿óδ ¿ ßΓ᫬¿
  252.           æΓ᫬¿ «íßπªñ὿ß∞ ó »αÑñδñπΘÑ⌐ ú½áóÑ, ¼δ  «íΩ∩󿽿  ¿σ  ñóπ¼∩
  253.      ß½Ñú¬á  αẽ¿τ¡δ¼¿  ß»«ß«íἿ: ¬á¬ π¬áºáΓѽ∞ ¡á ß¿¼ó«½ ¿ ¬á¬ ¼áßß¿ó
  254.      ß¿¼ó«½«ó. ÆÑ»Ñα∞ óδ ¼«ªÑΓÑ ½πτΦÑ »«¡∩Γ∞, ó τѼ ΓπΓ αạ¿µá.
  255.           àß½¿ ßΓα«¬á «»αÑñѽѡᠬᬠ¼áßß¿ó Γ¿»á char, Γ« ¼ÑßΓ« ñ½∩ φΓ«⌐
  256.      ßΓ᫬¿  íπñÑΓ ºáαѺÑαó¿α«óá¡«. àß½¿ ßΓ᫬𠫻αÑñѽ¿Γ∞ ¬á¬ π¬áºáΓѽ∞
  257.      ¡á Γ¿» char, ¼ÑßΓ« ñ½∩ ¡ÑÑ ¡Ñ αѺÑαó¿απÑΓß∩. àú« ¡πª¡« ºáαѺÑαó¿α«-
  258.      óáΓ∞ ßἫ¼π, ¿ß»«½∞ºπ∩ Σπ¡¬µ¿ε malloc ¿½¿ Ñ⌐ »«ñ«í¡πε, ¿½¿ ªÑ »α¿ß-
  259.      ó«¿Γ∞ π¬áºáΓѽε áñαÑß ßπΘÑßΓóπεΘÑ⌐ ßΓ᫬¿. Åα¿¼Ñα ¡á φΓπ ΓÑ¼π  »α¿-
  260.      óÑñÑ¡  ¡¿ªÑ  ó ñá¡¡«⌐ ú½áóÑ, ó αáºñѽѠ"Éáß»α«ßΓαá¡Ñ¡¡δÑ «Φ¿í¬¿ »α¿
  261.      »α«úαá¼¼¿α«óá¡¿¿ ¡á æ¿".
  262.                            î¡«ú«¼Ñα¡δÑ ¼áßß¿óδ
  263.           é ∩ºδ¬Ñ æ¿ ¿¼ÑÑΓß∩ ó«º¼«ª¡«ßΓ∞ «íΩ∩ó½Ñ¡¿∩  ¼¡«ú«¼Ñα¡δσ  ¼áßß¿-
  264.      ó«ó, τΓ« ñѽáÑΓß∩ ß½ÑñπεΘ¿¼ «íαẫ¼:
  265.           type name[size1][size2]...[sizeN];
  266.           Éáßß¼«Γα¿¼  ß½ÑñπεΘπε  »α«úαá¼¼π,  ¬«Γ«αá∩ ¿¡¿µ¿á½¿º¿απÑΓ ¡Ñß-
  267.      ¬«½∞¬« ñóπ¼Ñα¡δσ ¼áßß¿ó«ó, á ºáΓѼ »α«¿ºó«ñ¿Γ ¿σ ¼áΓα¿τ¡«Ñ  π¼¡«ªÑ-
  268.      ¡¿Ñ.
  269.           ÄíαáΓ¿ΓÑ  óáΦѠ󡿼᡿Ѡ¡á ñóá ¼«¼Ñ¡Γá. ä½∩ ¿¡¿µ¿á½¿ºáµ¿¿ ñóπ-
  270.      ¼Ñα¡δσ ¼áßß¿ó«ó ¿ß»«½∞ºπεΓß∩ ó½«ªÑ¡¡δÑ  ß»¿ß¬¿  {...},  αáºñѽѡ¡δÑ
  271.      ºá»∩Γ묨. èáªñá∩ ¿¡ñѬߡá∩ »ÑαѼѡ¡á∩ íÑαÑΓß∩ ó ¬óáñαáΓ¡δѠ߬«í¬¿.
  272.  
  273.           é  ¡Ñ¬«Γ«αδσ ∩ºδ¬áσ ñ½∩ «í«º¡áτÑ¡¿∩ ¼áßß¿ó«ó »α¿¼Ñ¡∩εΓß∩ óδαá-
  274.      ªÑ¡¿∩ ó¿ñá: [i,j]. Æá¬«Ñ «í«º¡áτÑ¡¿Ñ ñ«»πßΓ¿¼« ó  æ¿,  ¡«  φΓ«  óßÑ
  275.      αáó¡«,  τΓ«  ¡á»¿ßáΓ∞ »α«ßΓ« [j], Γ.¬. ºá»∩Γá∩ ¿¡ΓÑα»αÑΓ¿απÑΓß∩ ¬á¬
  276.      «»ÑαáΓ«α, «º¡áτáεΘ¿⌐: "óδτ¿ß½¿Γ∞ i, ºáΓѼ óδτ¿ß½¿Γ∞ j, ºáΓѼ  »α¿ß-
  277.      ó«¿Γ∞  óßѼπ óδαáªÑ¡¿ε º¡áτÑ¡¿Ñ j". ìÑ ºáíδóá⌐ΓÑ ßΓáó¿Γ∞ ¬óáñαáΓ¡δÑ
  278.      ß¬«í¬¿ ó«¬απú ¬áªñ«⌐ ¿¡ñѬߡ«⌐ »ÑαѼѡ¡«⌐.
  279.           î¡«ú«¼Ñα¡δÑ ¼áßß¿óδ σαá¡∩Γ∞ß∩ ó »á¼∩Γ¿  ß½Ñóá  ¡á»αááó«,  Γ.Ñ.
  280.      »«ß½Ññ¡¿⌐  ¿¡ñѬߠ¿º¼Ñ¡∩ÑΓß∩ íδßΓαÑÑ »Ñαó«ú«. äαπú¿¼¿ ß½«óἿ, Ñß½¿
  281.      ÑßΓ∞ ¼áßß¿ó arr[3][2], Γ«úñá φ½Ñ¼Ñ¡Γδ φΓ«ú« ¼áßß¿óá íπñπΓ σαá¡¿Γ∞ß∩
  282.      ß½ÑñπεΘ¿¼ «íαẫ¼:
  283.            
  284.           ¥Γ«Γ ªÑ »α¿¡µ¿» »α¿¼Ñ¡¿¼ ¿ ¬ ΓαÑσ-, τÑΓδαÑσ- ¿ ¬ N-¼Ñα¡δ¼ ¼áß-
  285.      ß¿óá¼.
  286.                             îáßß¿óδ ¿ Σπ¡¬µ¿¿
  287.           ùΓ« »«½πτ¿Γß∩, Ñß½¿ ¼δ ºáσ«Γ¿¼ »ÑαÑñáΓ∞ ¼áßß¿ó ó Σπ¡¬µ¿ε? Éáß-
  288.      ß¼«Γα¿¼  ß½ÑñπεΘπε Σπ¡¬µ¿ε, ó«ºóαáΘáѼπε ¿¡ñѬߠ¡á¿¼Ñ¡∞ΦÑúú« º¡áτÑ-
  289.      ¡¿∩ ó ¼áß¿¿óÑ µÑ½δσ τ¿ßѽ:
  290.           
  291.           ìá »α¿¼ÑαÑ φΓ«⌐ Σπ¡¬µ¿¿ ¼«ª¡« πó¿ñÑΓ∞ «ñ¡« ¿º »αÑ¿¼πΘÑßΓó ∩ºδ-
  292.      ¬á æ¿. ìÑΓ ¡Ñ«íσ«ñ¿¼«ßΓ¿ º¡áΓ∞ αẼÑα ¼áßß¿óá list[] ó« óαѼ∩ Γαá¡-
  293.      ß½∩µ¿¿. Å«τѼπ? Å«Γ«¼π τΓ« ¬«¼»¿½∩Γ«α ßτ¿ΓáÑΓ list[] ¡áτá½∞¡δ¼  áñ-
  294.      αÑß«¼  ¼áßß¿óá,  á  ¬«¡Ñτ¡δ⌐ áñαÑß ¼áßß¿óá Ñú« ¡Ñ ¿¡ΓÑαÑßπÑΓ. é맮ó
  295.      Σπ¡¬µ¿¿ Lmin ¼«ªÑΓ óδú½∩ñÑΓ∞ ß½ÑñπεΘ¿¼ «íαẫ¼:
  296.           
  297.           é«»α«ß: ùΓ« »ÑαÑñá¡« Σπ¡¬µ¿¿ lmin? ÄΓóÑΓ: ìáτá½∞¡δ⌐ áñαÑß ¼áß-
  298.      ß¿óá  vector.  ¥Γ«  º¡áτ¿Γ,  τΓ« Ñß½¿ óδ σ«Γ¿ΓÑ ¿º¼Ñ¡¿Γ∞ »ÑαѼѡ¡πε
  299.      list ó Σπ¡¬µ¿¿ lmin, Γ«τ¡« Γᬿ¼ ªÑ ¿º¼Ñ¡Ñ¡¿∩¼ »«ñóÑαú¡ÑΓß∩ ¿ »ÑαÑ-
  300.      ¼Ñ¡¡á∩ vector. î«ª¡«, ¡á»α¿¼Ñα, ¡á»¿ßáΓ∞ ß½ÑñπεΘπε Σπ¡¬µ¿ε:
  301.           
  302.           ÆÑ»Ñα∞  ñ½∩  ¿¡¿µ¿á½¿ºáµ¿¿ ¼áßß¿óá vector ó Σπ¡¬µ¿¿ main ¼«ª¡«
  303.      ßñѽáΓ∞ ó맮ó: setrand(vector,VSIZE).
  304.           Äí½áñáÑΓ ½¿ ∩ºδ¬ æ¿ ñ«ßΓáΓ«τ¡«⌐  ú¿í¬«ßΓ∞ε,  τΓ«íδ  »ÑαÑñáóáΓ∞
  305.      Σπ¡¬µ¿¿  ¼¡«ú«¼Ñα¡δÑ  ¼áßß¿óδ?  ÅαÑñ»«½«ª¿¼,  τΓ« ¼δ σ«Γ¿¼ ¿º¼Ñ¡¿Γ∞
  306.      Σπ¡¬µ¿ε setrand ñ½∩ αáí«Γδ ß ñóπ¼Ñα¡δ¼ ¼áßß¿ó«¼.  ìÑ«íσ«ñ¿¼«  ¡á»¿-
  307.      ßáΓ∞ »α¿í½¿º¿Γѽ∞¡« ß½ÑñπεΘÑÑ:
  308.           
  309.           çñÑß∞  CSIZE  -  φΓ« ú½«íá½∞¡á∩ ¬«¡ßΓá¡Γá, «»αÑñѽ∩εΘá∩ αẼÑα
  310.      óΓ«α«ú« ¿º¼ÑαÑ¡¿∩ ¼áßß¿óá. äαπú¿¼¿ ß½«óἿ, ½εí«⌐ ¼áßß¿ó »ÑαÑñáóáÑ-
  311.      ¼δ⌐ ó Σπ¡¬µ¿ε setrand, ñ«½ªÑ¡ íπñÑΓ ¿¼ÑΓ∞ óΓ«α«Ñ ¿º¼ÑαÑ¡¿Ñ αẼÑα«¼
  312.      ß CSIZE.
  313.           àßΓ∞, «ñ¡á¬«, ¿ ñαπú«Ñ αÑΦÑ¡¿Ñ. ÅαÑñ»«½«ª¿¼, τΓ« ¿¼ÑÑΓß∩  ¼áß-
  314.      ß¿ó  matrix[15][7],  ¬«Γ«αδ⌐ ¡Ñ«íσ«ñ¿¼« »ÑαÑñáΓ∞ ó Σπ¡¬µ¿ε setrand.
  315.      àß½¿ ¼δ ó«ß»«½∞ºπѼß∩  ¡áΦ¿¼  »Ñαó«¡áτá½∞¡δ¼  «»αÑñѽѡ¿Ñ¼  Σπ¡¬µ¿¿
  316.      setrand(int list[],int size), ¼«ª¡« íπñÑΓ ¡á»¿ßáΓ∞ Γá¬:
  317.                           setrand(matrix,15*7);
  318.           é Γᬫ¼ ß½πτáÑ Σπ¡¬µ¿∩ setrand ó«ß»α¿¼ÑΓ ¼áßß¿ó matrix ¬á¬ «ñ-
  319.      ¡«¼Ñα¡δ⌐ ¼áßß¿ó αẼÑα¡«ßΓ∞ε 105 /15*7/ ¿ óδ»«½¡¿Γ óßÑ, τΓ« ¡á¼ ¡Ñ-
  320.      «íσ«ñ¿¼«.
  321.                                 æΓαπ¬Γπαδ
  322.           îáßß¿óδ ¿ ßß佬¿ »«ºó«½∩εΓ ¡á¼ ßΓα«¿Γ∞ ß»¿ß¬¿ φ½Ñ¼Ñ¡Γ«ó «ñ¡«ú«
  323.      ¿ Γ«ú« ªÑ Γ¿»á. ùΓ« ñѽáΓ∞, Ñß½¿  ¡Ñ«íσ«ñ¿¼«  ß«ºñáΓ∞  τΓ«-½¿í«  ¿º
  324.      φ½Ñ¼Ñ¡Γ«ó αẽ¿τ¡«ú« Γ¿»á? ÄíΩ∩ó¿Γ∞ ßΓαπ¬Γπαπ.
  325.           æΓαπ¬Γπαá »αÑñßΓáó½∩ÑΓ ¿º ßÑí∩ ßí«α¡πε ¬«¡ßΓαπ¬µ¿ε, ó¬½ετáεΘπε
  326.      ó ßÑí∩ ñá¡¡δÑ αẽ¿τ¡δσ Γ¿»«ó. ÅαÑñ»«½«ª¿¼, ¡á»α¿¼Ñα, τΓ« ¡á¼ ¡Ñ«í-
  327.      σ«ñ¿¼«  σαá¡¿Γ∞  ¿¡Σ«α¼áµ¿ε  «  ¡Ñ¬«Γ«α«⌐ ºóѺñÑ: ¿¼∩, ß»Ñ¬Γαá½∞¡δ⌐
  328.      ¬½áßß, ¬««αñ¿¡áΓδ ¿ Γ.ñ. Æ«úñá ¼«ª¡« «íΩ∩ó¿Γ∞ ß½ÑñπεΘÑÑ:
  329.  
  330.           Æá¬¿¼ «íαẫ¼ ¼δ «íΩ∩󿽿 ßΓαπ¬Γπαπ /struct/ Γ¿»á star.  Ä»αÑ-
  331.      ñѽ¿ó  Γ¿»  star,  Γ.Ñ. »«¼ÑßΓ¿ó Ñú« «íΩ∩ó½Ñ¡¿Ñ ó ¡áτá½Ñ »α«úαá¼¼δ,
  332.      ¼«ª¡« ¡á»¿ßáΓ∞ ß½ÑñπεΘπε »α«úαá¼¼π:
  333.           
  334.           1-»α«ñ«½ªÑ¡¿Ñ Σπ¡¬µ¿¿ main.
  335.           ä½∩ «íαáΘÑ¡¿∩ ¬ ¬áªñ«¼π φ½Ñ¼Ñ¡Γπ »ÑαѼѡ¡«⌐ ßΓαπ¬Γπα¡«ú«  Γ¿»á
  336.      »ÑαÑñ  ¡¿¼ ßΓáó¿Γß∩ ¿¼∩ »ÑαѼѡ¡«⌐ ß Γ«τ¬«⌐. æ½ÑñπεΘá∩ ¬«¡ßΓαπ¬µ¿∩:
  337.      varname.memname ßτ¿ΓáÑΓß∩ φ¬ó¿óá½Ñ¡Γ¡«⌐ ¿¼Ñ¡¿  »ÑαѼѡ¡«⌐  Γ«ú«  ªÑ
  338.      Γ¿»á, τΓ« ¿ memname, ¿ ß ¡Ñ⌐ ¼«ª¡« »α«¿ºó«ñ¿Γ∞ ΓÑ ªÑ ßá¼δÑ «»Ñαᵿ¿.
  339.                            æΓαπ¬Γπαδ ¿ ßß佬¿
  340.           æß佬¿  ¡á  ßΓαπ¬Γπαδ  ¼«ª¡«  «íΩ∩ó½∩Γ∞ Γ«τ¡« ΓᬠªÑ, ¬á¬ ¿ ¡á
  341.      ñá¡¡δÑ ñαπú¿σ Γ¿»«ó. é φΓ«¼  ¬α«ÑΓß∩  «ß¡«óᠠ󫺼«ª¡«ßΓ¿  ß«ºñá¡¿∩
  342.      ßó∩º¡δσ ß»¿ß¬«ó ¿ ñαπú¿σ ñ¿¡á¼¿τÑ߬¿σ ßΓαπ¬Γπα ñá¡¡δσ. ìá ßἫ¼ ñÑ-
  343.      ½Ñ, π¬áºáΓѽ¿ ¡á ßΓαπ¬Γπαδ ¿ß»«½∞ºπεΓß∩ ó ∩ºδ¬Ñ æ¿ Γᬠ τáßΓ«,  τΓ«
  344.      ¿¼ÑÑΓß∩  ñáªÑ ß»Ñµ¿á½∞¡δ⌐ ß¿¼ó«½, »«ºó«½∩εΘ¿⌐ «íαáΘáΓ∞ß∩ ¬ φ½Ñ¼Ñ¡Γπ
  345.      ßΓαπ¬Γπαδ, ¡á ¬«Γ«αδ⌐ π¬áºδóáÑΓ π¬áºáΓѽ∞. Éáßß¼«Γα¿¼ ß½ÑñπεΘπε αÑ-
  346.      ñᬵ¿ε »αÑñδñπΘÑ⌐ »α«úαá¼¼δ:
  347.           
  348.           é ñá¡¡«⌐ αÑñᬵ¿¿ »α«úαá¼¼δ »ÑαѼѡ¡á∩ mystar ∩ó½∩ÑΓß∩ ßß佬«⌐
  349.      ¡á Γ¿» star, á ¡Ñ »ÑαѼѡ¡«⌐ Γ¿»á star. Åá¼∩Γ∞ ñ½∩ »ÑαѼѡ¡«⌐  star
  350.      αѺÑαó¿απÑΓß∩  óδº«ó«¼ Σπ¡¬µ¿¿ malloc. ÆÑ»Ñα∞, »α¿ «íαáΘÑ¡¿¿ ¬ φ½Ñ-
  351.      ¼Ñ¡Γá¼ ßΓαπ¬Γπα¡«⌐  »ÑαѼѡ¡«⌐  mystar  ¼δ  ¿ß»«½∞ºπѼ  «í«º¡áτÑ¡¿Ñ
  352.      ptrname->memname. æ¿¼ó«½ -> «º¡áτáÑΓ π¬áºδóáѼδ⌐ φ½Ñ¼Ñ¡Γ ßΓαπ¬Γπαδ.
  353.      ¥Γ« ß«¬αáΘÑ¡¡á∩ ºá»¿ß∞ «í«º¡áτÑ¡¿∩: (*ptrname).memname
  354.                              Ä»ÑαáΓ«α switch
  355.           é «»αÑñѽѡ¡δ⌐ ¼«¼Ñ¡Γ óδ  ¼«ªÑΓÑ  ¡áτáΓ∞  ßΓα«¿Γ∞  íÑ߬«¡Ñτ¡δÑ
  356.      ¬«¡ßΓαπ¬Γ«αδ  Γ¿»á if...else if...else ¿ Γ.ñ. Å«ß¼«Γα¿ΓÑ ¡á ß½Ññπε-
  357.      Θπε Σπ¡¬µ¿ε:
  358.           
  359.           è«¡ßΓαπ¬µ¿¿ Γᬫú« α«ñá ΓᬠτáßΓ« óßΓαÑτáεΓß∩ ó »α«úαá¼¼¿α«óá-
  360.      ¡¿¿,  τΓ«  ó ∩ºδ¬Ñ æ¿ »αÑñπß¼«ΓαÑ¡ ß»Ñµ¿á½∞¡δ⌐ «»ÑαáΓ«α switch, «í-
  361.      ½ÑúτáεΘ¿⌐ ¿σ ºá»¿ß∞. ì¿ªÑ »α¿óÑñÑ¡á ΓᠪѠΣπ¡¬µ¿∩,  »ÑαÑ»¿ßá¡¡á∩  ß
  362.      »α¿¼Ñ¡Ñ¡¿Ñ¼ «»ÑαáΓ«αá switch:
  363.           
  364.           äá¡¡á∩  Σπ¡¬µ¿∩  ó  µ¿¬½Ñ  ßτ¿ΓδóáÑΓ ß¿¼ó«½, »αÑ«íαáºπÑΓ Ñú« ó
  365.      ß¿¼ó«½ óÑασ¡Ñú« αÑú¿ßΓαá, ºáΓѼ ß«σαá¡∩ÑΓ Ñú« ó »ÑαѼѡ¡«⌐ cmd. çá-
  366.      ΓѼ,  ¡á  «ß¡«óá¡¿¿  º¡áτÑ¡¿∩  »ÑαѼѡ¡«⌐ cmd, óδ»«½¡∩ÑΓß∩ «»ÑαáΓ«α
  367.      switch. û¿¬½ »α«ñ«½ªáÑΓß∩ ñ« ΓÑσ »«α, »«¬á »ÑαѼѡ¡«⌐ done ¡Ñ íπñÑΓ
  368.      »α¿ßó«Ñ¡«  º¡áτÑ¡¿Ñ  ¡«½∞  /óÑα«∩Γ¡ÑÑ óßÑú« ó Σπ¡¬µ¿∩σ do_file_menu
  369.      ¿½¿ handle_others/.
  370.           Ä»ÑαáΓ«α  switch  ßαáó¡¿óáÑΓ  º¡áτÑ¡¿Ñ »ÑαѼѡ¡«⌐ cmd ß ¬áªñδ¼
  371.      º¡áτÑ¡¿Ñ¼ ¼ÑΓ¬¿ case. àß½¿ ß««ΓóÑΓßΓó¿Ñ ¡áσ«ñ¿Γß∩, ß φΓ«⌐ ¼ÑΓ¬¿ ¡á-
  372.      τ¿¡áÑΓß∩  óδ»«½¡Ñ¡¿Ñ,  ¬«Γ«α«Ñ »α«ñ«½ªáÑΓß∩ ¿½¿ ñ« «»ÑαáΓ«αá break,
  373.      ¿½¿ ñ« ¬«¡µá «»ÑαáΓ«αá switch. àß½¿ ß««ΓóÑßΓó¿Ñ  ¡Ñ  ¡á⌐ñÑ¡«,  á  ó
  374.      «»ÑαáΓ«α switch ó¬½ετѡᠼÑΓ¬á default, Γ«úñá óδ»«½¡Ñ¡¿Ñ ¡áτ¿¡áÑΓß∩
  375.      ß φΓ«⌐ ¼ÑΓ¬¿, Ñß½¿ ªÑ Γᬫ⌐ ¼ÑΓ¬¿ ¡ÑΓ, óÑß∞ «»ÑαáΓ«α switch »α«»πß-
  376.      ¬áÑΓß∩.
  377.           ç¡áτÑ¡¿Ñ value, ¿ß»«½∞ºπѼ«Ñ ó óδαáªÑ¡¿¿ switch(value), ñ«½ª¡«
  378.      íδΓ∞ º¡áτÑ¡¿Ñ¼, ß«ó¼ÑßΓ¿¼δ¼ ß Γ¿»«¼ int. äαπú¿¼¿ ß½«óἿ, φΓ«  º¡á-
  379.      τÑ¡¿Ñ  ñ«½ª¡« ½Ñú¬« »αÑ«íαẫóδóáΓ∞ß∩ ó µÑ½«Ñ, ¬á¬, ¡á»α¿¼Ñα, char,
  380.      αạ«ó¿ñ¡«ßΓ¿ »ÑαÑτ¿ß½∩Ѽ«ú« Γ¿»á ¿, ¬«¡Ñτ¡«, Γ¿» int ¿ óßÑ Ñú« óá-
  381.      α¿á¡Γδ. çñÑß∞ ¡Ñ ¼«úπΓ ¿ß»«½∞º«óáΓ∞ß∩ τ¿ß½á ß »½áóáεΘÑ⌐ Γ«τ¬«⌐, Γá-
  382.      ¬¿Ñ ¬á¬ float ¿ double, π¬áºáΓѽ¿, ßΓ᫬¿ ¿½¿ ßΓαπ¬Γπα¡δÑ  »ÑαѼѡ-
  383.      ¡δÑ  /σ«Γ∩  φ½Ñ¼Ñ¡Γδ  ßΓαπ¬Γπα, ß«ó¼ÑßΓ¿¼δÑ ß µÑ½δ¼, ¼«úπΓ íδΓ∞ ¿ß-
  384.      »«½∞º«óá¡δ/.
  385.  
  386.           ç¡áτÑ¡¿Ñ value ¼«ªÑΓ íδΓ∞ ½εíδ¼ óδαáªÑ¡¿Ñ¼  /¬«¡ßΓá¡Γá,  »ÑαÑ-
  387.      ¼Ñ¡¡á∩,  ó맮ó Σπ¡¬µ¿¿ ¿½¿ ½εíá∩ ¿σ ¬«¼í¿¡áµ¿∩/, Γ«úñᠬᬠóáα¿á¡Γ-
  388.      ¡δÑ ¼ÑΓ¬¿ ñ«½ª¡δ íδΓ∞ ¬«¡ßΓá¡ΓἿ. èα«¼Ñ Γ«ú«, ¡á  ¬áªñ«Ñ  ¬½ετÑó«Ñ
  389.      ß½«ó« case ¼«ª¡« ¿ß»«½∞º«óáΓ∞ Γ«½∞¬« «ñ¡« º¡áτÑ¡¿Ñ. àß½¿ íδ ó Σπ¡¬-
  390.      µ¿¿ do_main_menu ¡Ñ ¿ß»«½∞º«óá½áß∞ Σπ¡¬µ¿∩ toupper ñ½∩ »αÑ«íαẫóá-
  391.      ¡¿∩ »ÑαѼѡ¡«⌐ cmd ó óÑασ¡¿⌐ αÑú¿ßΓα, «»ÑαáΓ«α switch ¼«ú íδ óδú½∩-
  392.      ñÑΓ∞ Γᬿ¼ «íαẫ¼:
  393.           switch (cmd) {
  394.              case 'f':
  395.              case 'F': do file menu(done);
  396.                break;
  397.              case 'r':
  398.              case 'R': run_program();
  399.                break;
  400.              ...
  401.           é ñá¡¡«¼ óáα¿á¡ΓÑ Σπ¡¬µ¿∩ do_file_menu óδ»«½¡∩ÑΓß∩ ó¡Ñ ºáó¿ß¿-
  402.      ¼«ßΓ¿ «Γ αÑú¿ßΓα«ó«⌐ »α¿¡áñ½Ñª¡«ßΓ¿ »ÑαѼѡ¡«⌐ cmd, Γ« ªÑ «Γ¡«ß¿Γß∩
  403.      ¿ ¬ ñαπú¿¼ ¼ÑΓ¬á¼.
  404.           ä½∩ «¬«¡τá¡¡¿∩ «íαáí«Γ¬¿ ñá¡¡«⌐ ¼ÑΓ¬¿ ¡Ñ«íσ«ñ¿¼«  ¿ß»«½∞º«óáΓ∞
  405.      «»ÑαáΓ«α break. é »α«Γ¿ó¡«¼ ß½πτáÑ íπñπΓ ¿ß»«½¡Ñ¡δ «»ÑαáΓ«αδ, «Γ¡«-
  406.      ß∩Θ¿Ñß∩ ¬ ñαπú¿¼ ¼ÑΓ¬á¼, ñ« ΓÑσ »«α, »«¬á, ¬«¡Ñτ¡«,  ¡Ñ  óßΓαÑΓ¿Γß∩
  407.      «»ÑαáΓ«α  break,  ß½ÑñπεΘ¿⌐ ºá óδº«ó«¼ Σπ¡¬µ¿¿ do_file_menu, Γ« »Ñ-
  408.      τáΓ∞ íπ¬óδ F ó맮óÑΓ óδ»«½¡Ñ¡¿Ñ φΓ«⌐ Σπ¡¬µ¿¿, á ºá  ¡Ñ⌐  ¿  Σπ¡¬µ¿¿
  409.      run_program.
  410.           üδóáεΓ  ß½πτá¿, ¬«úñá Γᬠ¿ ß½ÑñπÑΓ ñѽáΓ∞. Éáßß¼«Γα¿¼ ß½Ññπε-
  411.      Θ¿⌐ »α¿¼Ñα:
  412.           typdef enum (sun,mon,tues,wed,thur,fri,sat} days;
  413.           main()
  414.           {`days today;
  415.           ...
  416.           
  417.           é φΓ«¼ «»ÑαáΓ«αÑ switch º¡áτÑ¡¿∩ «Γ mon ñ« fri »α¿óÑñπΓ ¬  ¿ß-
  418.      »«½¡Ñ¡¿ε Σπ¡¬µ¿¿ puts, »«ß½Ñ τÑú« «»ÑαáΓ«α break »αѬαáΓ¿Γ óδ»«½¡Ñ-
  419.      ¡¿Ñ «»ÑαáΓ«αá. Äñ¡á¬«, Ñß½¿ º¡áτÑ¡¿Ñ »ÑαѼѡ¡«⌐  today  αáó¡«  sat,
  420.      óδ»«½¡¿Γß∩  Σπ¡¬µ¿∩  printf,  ºá  ¬«Γ«α«⌐  »«ß½ÑñπÑΓ  «»ÑαáΓ«α puts
  421.      ("relax!"); Ñß½¿ ªÑ º¡áτÑ¡¿Ñ »ÑαѼѡ¡«⌐ today αáó¡« sun, óδ»«½¡¿Γß∩
  422.      Γ«½∞¬« »«ß½Ññ¡∩∩ Σπ¡¬µ¿∩ puts.
  423.                         è«¼á¡ñδ »«Γ«¬á π»αáó½Ñ¡¿∩
  424.           æπΘÑßΓóπεΓ ñ«»«½¡¿Γѽ∞¡δÑ ¬«¼á¡ñδ, ¿ß»«½∞ºπεΘ¿Ñß∩  ó¡πΓα¿  π»-
  425.      αáó½∩εΘ¿σ  ßΓαπ¬Γπα  ¿½¿  ñ½∩ ¿¼¿Γᵿ¿ ñαπú¿σ π»αáó½∩εΘ¿σ ßΓαπ¬Γπα.
  426.      Ä»ÑαáΓ«α return »«ºó«½∩ÑΓ »αÑαδóáΓ∞ óδ»«½¡Ñ¡¿Ñ  Σπ¡¬µ¿⌐.  Ä»ÑαáΓ«αδ
  427.      break  ¿ continue »αÑñ¡áº¡áτÑ¡δ ñ½∩ ¿ß»«½∞º«óá¡¿∩ ó¡πΓα¿ µ¿¬½«ó ñ½∩
  428.      »α«»π߬ᠫ»αÑñѽѡ¡δσ óδαáªÑ¡¿⌐. Ä»ÑαáΓ«α goto »«ºó«½∩ÑΓ »ÑαÑñáóáΓ∞
  429.      π»αáó½Ñ¡¿Ñ ó αẽ¿τ¡δÑ ¼ÑßΓá »α«úαá¼¼δ. ê »«ß½Ññ¡¿⌐ πß½«ó¡δ⌐ «»Ñαá-
  430.      Γ«α (?:) »«ºó«½∩ÑΓ ßªáΓ∞ «»αÑñѽѡ¡δÑ óδαáªÑ¡¿∩ Γ¿»á if...else óßÑ-
  431.      ú«½¿Φ∞ ó «ñ¡π ßΓ᫬π.
  432.           îá½Ñ¡∞¬¿⌐ ß«óÑΓ: ìÑ ß»ÑΦ¿ΓÑ ¿ß»«½∞º«óáΓ∞ φΓ¿ «»ÑαáΓ«αδ /ºá ¿ß-
  433.      ¬½ετÑ¡¿Ñ¼, ¬«¡Ñτ¡«, «»ÑαáΓ«αá return/. è«¡Ñτ¡«, óßΓαÑτáεΓß∩  ß¿Γπá-
  434.      µ¿¿, ó ¬«Γ«αδσ ¿ß»«½∞º«óá¡¿Ñ φΓ¿σ «»ÑαáΓ«α«ó «íÑß»Ñτ¿óáÑΓ ¡á¿½πτΦÑÑ
  435.      αÑΦÑ¡¿Ñ, ¡« ú«αáºñ« τáΘÑ, ¿ ß í«½∞ΦÑ⌐ ∩ß¡«ßΓ∞ε, ºáñáτá  ¼«ªÑΓ  íδΓ∞
  436.      αÑΦÑ¡á íѺ ¿σ ¿ß»«½∞º«óá¡¿∩. Äß«íÑ¡¡« ¿ºíÑúá⌐ΓÑ »α¿¼Ñ¡Ñ¡¿∩ «»ÑαáΓ«-
  437.      αá goto. ê¼Ñ∩  ó  ßó«Ñ¼  αáß»«α∩ªÑ¡¿¿  «»ÑαáΓ«αδ  return,  break  ¿
  438.      continue, óδ ½Ñú¬« ¼«ªÑΓÑ «í«⌐Γ¿ß∞ íѺ ¡Ñú«.
  439.  
  440.                              Ä»ÑαáΓ«α return
  441.          Ä»ÑαáΓ«α  return  ¿ß»«½∞ºπÑΓß∩ ó ñóπσ «ß¡«ó¡δσ ß½πτá∩σ. é«-»Ñα-
  442.      óδσ, Ñß½¿ Σπ¡¬µ¿∩ ó«ºóαáΘáÑΓ º¡áτÑ¡¿Ñ, «¡ ñ«½ªÑ¡  íδΓ∞  ¿ß»«½∞º«óá¡
  443.      ñ½∩ »ÑαÑñáτ¿ φΓ«ú« º¡áτÑ¡¿∩ ó óδºδóáóΦπε Σπ¡¬µ¿ε. ìá»α¿¼Ñα:
  444.           
  445.           é ñá¡¡«¼ ß½πτáÑ «»ÑαáΓ«α return ¿ß»«½∞º«óá¡ ñ½∩ »ÑαÑñáτ¿ ó óδ-
  446.      ºδóáóΦπε »α«úαá¼¼π ¼á¬ß¿¼á½∞¡«ú« º¡áτÑ¡¿∩.
  447.           é«-óΓ«αδσ, «»ÑαáΓ«α return ¿ß»«½∞ºπÑΓß∩ ñ½∩ óδσ«ñá ¿º  Σπ¡¬µ¿¿
  448.      ñ«  «¬«¡τá¡¿∩ ÑÑ αáí«Γδ. ìá»α¿¼Ñα, ó ¡áτá½Ñ ßó«Ñú« óδ»«½¡Ñ¡¿∩ Σπ¡¬-
  449.      µ¿∩ ¼«ªÑΓ «í¡áαπª¿Γ∞ πß½«ó¿Ñ, ΓαÑíπεΘÑÑ ¡Ñ¼Ññ½Ñ¡¡«ú« »αѬαáΘÑ¡¿∩ ÑÑ
  450.      αáí«Γδ.  é¼ÑßΓ« Γ«ú«, τΓ«íδ »«¼ÑΘáΓ∞ óßÑ «ß¡«ó¡δÑ «»ÑαáΓ«αδ Σπ¡¬µ¿¿
  451.      ó¡πΓα∞ «»ÑαáΓ«αá if, ñ½∩ óδσ«ñá ¼«ª¡« ¿ß»«½∞º«óáΓ∞ «»ÑαáΓ«α return.
  452.      àß½¿  φΓ«  Σπ¡¬µ¿∩  Γ¿»á void, ¼«ª¡« ¿ß»«½∞º«óáΓ∞ return ó««íΘÑ íѺ
  453.      áαúπ¼Ñ¡Γ«ó, Γ.Ñ. íѺ »ÑαÑñáóáѼ«ú« º¡áτÑ¡¿∩. Éáßß¼«Γα¿¼ ¼«ñ¿Σ¿¬áµ¿ε
  454.      αá¡ÑÑ »α¿óÑñÑ¡¡«⌐ Σπ¡¬µ¿¿ lmin:
  455.           
  456.           é  ñá¡¡«¼ ß½πτáÑ, Ñß½¿ »áαá¼ÑΓα size ¼Ñ¡∞ΦÑ ¿½¿ αáóÑ¡ ¡π½ε, Γ«
  457.      ó ¼áßß¿óÑ list ¡¿τÑú« ¡ÑΓ, ß½Ññ«óáΓѽ∞¡« ¡Ñ¼Ññ½Ñ¡¡« óδºδóáÑΓß∩  ñ½∩
  458.      óδσ«ñá  ¿º Σπ¡¬µ¿¿ «»ÑαáΓ«α return. ÄíαáΓ¿ΓѠ󡿼᡿Ѡ¡á ó«ºóαáΘáÑ-
  459.      ¼«Ñ º¡áτÑ¡¿Ñ /-1/. Æá¬ ¬á¬ -1 ¡Ñ ¼«ªÑΓ íδΓ∞ ¿¡ñѬ߫¼  ¼áßß¿óá,  ñ½∩
  460.      óδºδóáεΘÑ⌐ »α«úαá¼¼δ φΓ« íπñÑΓ ßó¿ñÑΓѽ∞ßΓó«¼ «í «Φ¿í¬Ñ.
  461.                              Ä»ÑαáΓ«α break
  462.           ê¡«úñᠠ󫺡¿¬áÑΓ  ¡Ñ«íσ«ñ¿¼«ßΓ∞ óδ⌐Γ¿ ¿º µ¿¬½á ñ« Ñú« «¬«¡τá-
  463.      ¡¿∩. Éáßß¼«Γα¿¼ ß½ÑñπεΘπε »α«úαá¼¼π:
  464.           
  465.           ÄíαáΓ¿ΓѠ󡿼᡿Ѡ¡á «»ÑαáΓ«α if(score<0)break;. Ä¡  «º¡áτáÑΓ,
  466.      τΓ«  Ñß½¿  »«½∞º«óáΓѽ∞ óóÑñÑΓ ó ¬áτÑßΓóÑ º¡áτÑ¡¿∩ »ÑαѼѡ¡«⌐ score
  467.      «Γα¿µáΓѽ∞¡«Ñ º¡áτÑ¡¿Ñ, µ¿¬½ while »αѬαáΓ¿Γ óδ»«½¡Ñ¡¿Ñ. ÅÑαѼѡ¡á∩
  468.      j  ¿ß»«½∞ºπÑΓß∩ «ñ¡«óαѼѡ¡« ñ½∩ ¿¡ñѬ߿α«óá¡¿∩ ¼áßß¿óá score ¿ ñ½∩
  469.      »«ñßτÑΓá «íΘÑú« ¬«½¿τÑßΓóá φ½Ñ¼Ñ¡Γ«ó ó ¬áªñ«¼  α∩ñπ  ¼áßß¿óá;  φΓ«Γ
  470.      ßτÑΓτ¿¬ ß«σαá¡∩ÑΓß∩ ó »Ñαó«¼ φ½Ñ¼Ñ¡ΓÑ α∩ñá.
  471.           éδ  ¼«ªÑΓÑ óß»«¼¡¿Γ∞ ¿ß»«½∞º«óá¡¿Ñ «»ÑαáΓ«αá break ó «»ÑαáΓ«αÑ
  472.      switch ó »«ß½Ññ¡Ñ¼ αáºñѽÑ. Æ«úñá «¡ ¿ß»«½∞º«óá½ß∩  ñ½∩  óδσ«ñá  ¿º
  473.      «»ÑαáΓ«αá  switch,  ó  ñá¡¡«¼  ß½πτáÑ «¡ ¿ß»«½∞ºπÑΓß∩ ñ½∩ óδσ«ñá ¿º
  474.      µ¿¬½á ¿ »α«ñ«½ªÑ¡¿∩ αáí«Γδ »α«úαá¼¼δ. Ä»ÑαáΓ«α break ¼«ªÑΓ  ¿ß»«½∞-
  475.      º«óáΓ∞ß∩  ß«  óßѼ¿ ΓαѼ∩ µ¿¬½á¼¿ /for, while, do...while/, á ΓᬪÑ
  476.      ó¼ÑßΓÑ ß «»ÑαáΓ«α«¼ switch, «ñ¡á¬«, «¡ ¡Ñ ¼«ªÑΓ íδΓ∞ ¿ß»«½∞º«óá¡  ó
  477.      «»ÑαáΓ«αÑ if...else ¿½¿ ó «ß¡«ó¡«¼ ΓѽѠΣπ¡¬µ¿¿.
  478.                             Ä»ÑαáΓ«α continue
  479.           ê¡«úñá íδóáÑΓ ¡Ñ«íσ«ñ¿¼«, ¡Ñ óδσ«ñ∩ ¿º µ¿¬½á, »α«»πßΓ¿Γ∞ ¡Ñ¬«-
  480.      Γ«α«Ñ óδαáªÑ¡¿Ñ, ¿½¿ óδαáªÑ¡¿∩, ¿ óÑα¡πΓ∞ß∩ ¬ ¡áτá½π µ¿¬½á. é Γᬿσ
  481.      ß¿Γπᵿ∩σ ß½ÑñπÑΓ ¿ß»«½∞º«óáΓ∞ ß»Ñµ¿á½∞¡« ñ½∩ φΓ«ú« »αÑñ¡áº¡áτÑ¡¡δ⌐
  482.      «»ÑαáΓ«α continue. Éáßß¼«Γα¿¼ ß½ÑñπεΘπε »α«úαá¼¼π:
  483.           
  484.           Åα¿ óδ»«½¡Ñ¡¿¿ «»ÑαáΓ«αá continue »α«úαá¼¼á »α«»π߬áÑΓ  «ßΓáó-
  485.      Φπεß∩ τáßΓ∞ µ¿¬½á ¿ ß¡«óá óδτ¿ß½∩ÑΓ πß½«ó¿Ñ óδ»«½¡Ñ¡¿∩ µ¿¬½á. é αÑ-
  486.      ºπ½∞ΓáΓÑ, αáí«Γá φΓ«⌐ »α«úαá¼¼δ «Γ½¿τáÑΓß∩ «Γ Γ«⌐, ¬«Γ«απε ¼δ αáßß-
  487.      ¼áΓα¿ó὿  »ÑαÑñ  φΓ¿¼.  é¼ÑßΓ«  óδ»«½¡Ñ¡¿∩ ó¡πΓαÑ¡¡Ñú« µ¿¬½á »«ß½Ñ
  488.      óó«ñá »«½∞º«óáΓѽѼ º¡áτÑ¡¿∩ -1 »α«úαἼᠠßτ¿ΓáÑΓ,  τΓ«  »α«¿º«Φ½á
  489.      «Φ¿í¬á, ¿ ¡áτ¿¡áÑΓ ß¡«óá óδ»«½¡∩Γ∞ µ¿¬½ while. Æá¬ ¬á¬ »ÑαѼѡ¡á∩ j
  490.      ó φΓ«¼ ß½πτáÑ ¡Ñ íδ½á πóѽ¿τÑ¡á, »α«úαá¼¼á ß¡«óá »α«ß¿Γ óóÑßΓ¿ º¡á-
  491.      τÑ¡¿Ñ.
  492.  
  493.                               Ä»ÑαáΓ«α goto
  494.           äá,  ó  ∩ºδ¬Ñ  æ¿  ßπΘÑßΓóπÑΓ «»ÑαáΓ«α goto. àú« Σ«α¼áΓ »α«ßΓ:
  495.      goto ¼ÑΓ¬á, úñÑ ¼ÑΓ¬á »αÑñßΓáó½∩ÑΓ ¿º ßÑí∩  ¬«¡¬αÑΓ¡δ⌐  ¿ñÑ¡Γ¿Σ¿¬á-
  496.      Γ«α, ßó∩ºá¡¡δ⌐ ß «»αÑñѽѡ¡δ¼ óδαáªÑ¡¿Ñ¼. Äñ¡á¬«, óßÑ αáºπ¼¡δÑ ß½π-
  497.      τá¿ ¿ß»«½∞º«óá¡¿∩ «»ÑαáΓ«αá  goto  »αÑñπß¼«ΓαÑ¡δ  ¿¼ÑεΘ¿¼¿ß∩  ΓαѼ∩
  498.      µ¿¬½á¼¿, »«φΓ«¼π »«ñπ¼á⌐ΓÑ, á ¡πªÑ¡ ½¿ óá¼ φëà«»ÑαáΓ«α.
  499.                          ôß½«ó¡δ⌐ «»ÑαáΓ«α /?:/
  500.           Åα¿  ¡Ñ«íσ«ñ¿¼«ßΓ¿ óδí«αᠼѪñπ ñóπ¼∩ óδαáªÑ¡¿∩¼¿ /¿ ¿σ º¡áτÑ-
  501.      ¡¿∩¼¿/ ¡á «ß¡«óÑ ¬á¬«ú«-½¿í« πß½«ó¿∩ «í∩τ¡«  ¿ß»«½∞ºπÑΓß∩  «»ÑαáΓ«α
  502.      if...else, ¬á¬, ¡á»α¿¼Ñα, ¡¿ªÑ:
  503.           
  504.           ¥Γá ß¿Γπᵿ∩ ¡áßΓ«½∞¬« αáß»α«ßΓαá¡Ñ¡á, τΓ« ¿¼ÑÑΓß∩ ß»Ñµ¿á½∞¡á∩
  505.      ¬«¡ßΓαπ¬µ¿∩ ñ½∩ óδ»«½¡Ñ¡¿∩ Γᬫú« α«ñá óδí«αá. Ä¡á ¿¼ÑÑΓ  ß½ÑñπεΘ¿⌐
  506.      ó¿ñ:
  507.           exp1? exp2: exp3
  508.           ¥Γ«  τ¿ΓáÑΓß∩  ß½ÑñπεΘ¿¼  «íαẫ¼: "àß½¿ óδαáªÑ¡¿Ñ Ñσα1 óÑα¡«,
  509.      Γ«úñá óδτ¿ß½∩Γ∞ óδαáªÑ¡¿Ñ Ñσα2 ¿ »α¿ßó«¿Γ∞ Ñú« º¡áτÑ¡¿Ñ óßѼπ óδαá-
  510.      ªÑ¡¿ε,  ó »α«Γ¿ó¡«¼ ß½πτáÑ óδτ¿ß½∩Γ∞ óδαáªÑ¡¿Ñ Ñσα3 ¿ »α¿ßó«¿Γ∞ Ñú«
  511.      º¡áτÑ¡¿Ñ óßѼπ óδαáªÑ¡¿ε". öπ¡¬µ¿ε imin ¼«ª¡« »ÑαÑ»¿ßáΓ∞, ¿ß»«½∞º«-
  512.      óáó Γá¬πε ¬«¡ßΓαπ¬µ¿ε, ß½ÑñπεΘ¿¼ «íαẫ¼:
  513.           int imin(int a, int b)
  514.           {
  515.                return((a<b)?a:b);
  516.           }
  517.           èα«¼Ñ  Γ«ú«, óßε Σπ¡¬µ¿ε ¼«ª¡« «»αÑñѽ¿Γ∞ ó «ñ¡π ßΓ᫬π ó ó¿ñÑ
  518.      ¼á¬α«ßá:
  519.           #define imin(a,b) ((a<b)?a:b)
  520.           ÆÑ»Ñα∞, Ñß½¿ ó  »α«úαἼѠ óßΓαÑΓ¿Γß∩  óδαáªÑ¡¿Ñ  imin(e1,e2),
  521.      »α«úαἼᠠºá¼Ñ¡¿Γ Ñú« ¡á óδαáªÑ¡¿Ñ ((Ñ1<e2)?e1:e2) ¿ »α«ñ«½ª¿Γ óδ-
  522.      τ¿ß½Ñ¡¿∩. ¥Γ«, ¡á ßἫ¼ ñѽÑ, í«½ÑÑ «íΘÑÑ αÑΦÑ¡¿Ñ, Γ.¬. á  ¿  b  ¡Ñ
  523.      «í∩ºáΓѽ∞¡«  ñ«½ª¡δ ΓÑ»Ñα∞ »α¿¡áñ½ÑªáΓ∞ Γ¿»π int; «¡¿ ¼«úπΓ »α¿¡áñ-
  524.      ½ÑªáΓ∞ ½εí«¼π Γ¿»π, ß ¬«Γ«αδ¼ ¼«ª¡« óδ»«½¡¿Γ∞ «»Ñαᵿε ßαáó¡Ñ¡¿∩.
  525.           
  526.          æ«óαѼѡ¡δ⌐ ¿ ¬½áßß¿τÑ߬¿⌐ ßΓ¿½¿ »α«úαá¼¼¿α«óá¡¿∩ ¡á æ¿
  527.           é »α«úαá¼¼¿α«óá¡¿¿ ¡á æ¿ ¿¼ÑεΓß∩ αẽ¿τ¡δÑ  ΓÑτÑ¡¿∩,  ßΓáó∩Θ¿Ñ
  528.      ßó«Ñ⌐  µÑ½∞ε  «í½Ñúτ¿Γ∞ ¿ß»«½∞º«óá¡¿Ñ ∩ºδ¬á. î¡«ú¿Ñ ¿º φΓ¿σ ΓÑτÑ¡¿⌐
  529.      »α«Γ¿ó«αÑτáΓ ß½«ª¿óΦ¿¼ß∩ ¼ÑΓ«ñá¼ »α«úαá¼¼¿α«óá¡¿∩ ¡á æ¿.  êß»«½∞º«-
  530.      óá¡¿Ñ  ¡«óδσ  ¼ÑΓ«ñ«ó  ßΓὫ ó«º¼«ª¡δ¼ í½áú«ñáα∩ αáßΦ¿αÑ¡¿∩¼ ∩ºδ¬á,
  531.      «»ÑαÑñѽѡ¡δ¿ è«¼¿ΓÑΓ«¼ »« ßΓá¡ñáαΓ¿ºáµ¿¿  ∩ºδ¬á  æ¿  Ç¼Ñਪá¡ß¬«ú«
  532.      ¡áµ¿«¡á½∞¡«ú«  ¿¡ßΓ¿ΓπΓá  ßΓá¡ñáαΓ«ó  /ANSI/. äá¡¡δ⌐ αáºñѽ »«¼«ªÑΓ
  533.      óá¼ ß««α¿Ñ¡Γ¿α«óáΓ∞ß∩ ó ßΓáαδσ ¿ ¡«óδσ ¼ÑΓ«ñáσ ¿ »α¿¼Ñ¡∩Γ∞  ¿σ  ñ½∩
  534.      ¡á»¿ßá¡¿∩ í«½ÑÑ πñ«í¡δσ »α«úαá¼¼.
  535.           Éáºπ¼ÑÑΓß∩ Æπαí«-æ¿ »«ññÑনóáÑΓ ¬á¬ ¬½áß¿τÑ߬¿⌐, Γᬠ¿ ß«óαÑ-
  536.      ¼Ñ¡¡δ⌐ ßΓ¿½∞ »α«úαá¼¼¿α«óá¡¿∩.
  537.           
  538.         êß»«½∞º«óá¡¿Ñ  »α«Γ«Γ¿»«ó Σπ¡¬µ¿⌐ ¿ »«½¡δσ «»αÑñѽѡ¿⌐ Σπ¡¬µ¿⌐
  539.           
  540.           é ¬½áßß¿τÑ߬«¼ ßΓ¿½Ñ »α«úαá¼¼¿α«óá¡¿∩ ¡á æ¿ Σπ¡¬µ¿¿ «íΩ∩ó½∩εΓ-
  541.      ß∩ »α¿ »«¼«Θ¿ π¬áºá¡¿∩ ¿¼Ñ¡¿ ¿ ó«ºΓ¿»á ó«ºóαáΘáѼ«ú« º¡áτÑ¡¿∩. ìá»-
  542.      α¿¼Ñα, Σπ¡¬µ¿∩ swap «»αÑñѽ∩½áß∞ íδ Γá¬:
  543.                                int swap();
  544.  
  545.      ìÑ π¬áºδóáÑΓß∩ ¡¿¬á¬«⌐ ¿¡Σ«α¼áµ¿¿ « »áαá¼ÑΓαáσ, ¡¿ ¿σ  Γ¿»,  ¡¿  ¿σ
  546.      τ¿ß½«.  è½áßß¿τÑ߬«Ñ  «»αÑñѽѡ¿Ñ  Γᬫ⌐ Σπ¡¬µ¿¿ óδú½∩ñ¿Γ ß½ÑñπεΘ¿¼
  547.      «íαẫ¼:
  548.           int swap(a,b)
  549.           int *a,*b;
  550.           {            1
  551.              /*Body of  function*/
  552.           }
  553.           1-Γѽ« Σπ¡¬µ¿¿.
  554.           Åα¿ Γᬫ¼ ßΓ¿½Ñ ¡Ñ »α«ó«ñ¿Γß∩ »α«óÑα¬á ¡á ¡á½¿τ¿Ñ «Φ¿í«¬ ó ¿ß-
  555.      »«½∞º«óá¡¿¿ »áαá¼ÑΓα«ó, τΓ« ó ßó«ε «τÑαÑñ∞ »α¿ó«ñ¿Γ ¬ »«∩ó½Ñ¡¿ε ºá-
  556.      »πΓá¡¡δσ ¿ Γαπñ¡« «Γ߽Ѫ¿óáѼδσ ß¿Γπᵿ⌐. êºíÑúá⌐ΓÑ Γ«¬«ú« ßΓ¿½∩.
  557.           æ«óαѼѡ¡δ⌐ ßΓ¿½∞ ¿ß»«½∞ºπÑΓ »α«Γ«Γ¿»δ Σπ¡¬µ¿⌐ /ñ½∩ «íΩ∩ó½Ñ¡¿∩
  558.      Σπ¡¬µ¿⌐/  ¿  ß»¿ß¬¿  »áαá¼ÑΓα«ó  /ñ½∩ «»αÑñѽѡ¿∩ Σπ¡¬µ¿⌐/. ÄíΩ∩ó¿¼
  559.      Σπ¡¬µ¿ε swap ß ¿ß»«½∞º«ó᡿Ѽ »α«Γ«Γ¿»á Σπ¡¬µ¿¿:
  560.           int swap (int *a,int *b);
  561.           ÆÑ»Ñα∞ ¬«úñá »α«úαá¼¼á íπñÑΓ ¬«¼»¿½¿α«óáΓ∞ß∩, «¡á íπñÑΓ  «í½á-
  562.      ñáΓ∞  óßÑ⌐  ¿¡Σ«α¼áµ¿Ñ⌐, ¡Ñ«íσ«ñ¿¼«⌐ ñ½∩ »«½¡«⌐ »α«óÑન ¡á ¡á½¿τ¿Ñ
  563.      «Φ¿í«¬ »α¿ ó맮óÑ Σπ¡¬µ¿¿ swap. Æ«τ¡« Γᬫ⌐ ªÑ Σ«α¼áΓ ¼«ª¡« ¿ß»«½∞-
  564.      º«óáΓ∞ »α¿ «»αÑñѽѡ¿¿ Σπ¡¬µ¿¿:
  565.           int swap(int *a, int *b)
  566.           {
  567.              /*...*/
  568.           }
  569.           æ«óαѼѡ¡δ⌐  ßΓ¿½∞  «íÑß»Ñτ¿óáÑΓ  ½πτΦπε »α«óÑα∩Ѽ«ßΓ∞ «Φ¿í«¬,
  570.      ñáªÑ Ñß½¿ ¡Ñ ¿ß»«½∞ºπεΓß∩ »α«Γ«Γ¿»δ Σπ¡¬µ¿⌐. àß½¿ »α«Γ«Γ¿»δ ¿ß»«½∞-
  571.      ºπεΓß∩,  ¬«¼»¿½∩Γ«α «íÑß»Ñτ¿Γ »α«óÑα¬π ¡á ß«ó¼ÑßΓ¿¼«ßΓ∞ «»αÑñѽѡ¿∩
  572.      ¿ «íΩ∩ó½Ñ¡¿∩.
  573.                Ä»αÑñѽѡ¿Ñ »α¿ »«¼«Θ¿ ¬½ετÑó«ú« ß½«óá enum
  574.           é ¬½áßß¿τÑ߬«¼ æ¿ ß»¿ß¬¿  «»αÑñѽ∩εΓß∩  »α¿  »«¼«Θ¿  ñ¿αÑ¬Γ¿óδ
  575.      #define ß½ÑñπεΘ¿¼ «íαẫ¼:
  576.                              #define sun   0
  577.                              #define mon   1
  578.                              #define tues  2
  579.                              #define wed   3
  580.                              #define thur  4
  581.                              #define fri   5
  582.                              #define sat   6
  583.           ÆÑ»Ñα∞  ¿¼ÑÑΓß∩  ó«º¼«ª¡«ßΓ∞ «»αÑñѽ∩Γ∞ »Ñατ¿ß½∩ѼδÑ Γ¿»δ ñá¡-
  584.      ¡δσ, ¿ß»«½∞ºπ∩ ¬½ετÑó«Ñ ß½«ó« enum, ¬á¬ φΓ« »«¬áºá¡« ¡¿ªÑ:
  585.             typedef enum {sun,mon,tues,wed,thur,fri,sat}days;
  586.           ¥Γ¿ ñóá «»ÑαÑñѽѡ¿∩ »«½¡«ßΓ∞ε ¿ñÑ¡Γ¿τ¡δ, ó»½«Γ∞ ñ« Γ«ú«,  τΓ«
  587.      »ÑαѼѡ¡«⌐ sun »α¿ßóá¿óáÑΓß∩ º¡áτÑ¡¿Ñ 0, á »ÑαѼѡ¡«⌐ sat -6. Äñ¡á-
  588.      ¬«, ó ß«óαѼѡ¡«¼ ¼ÑΓ«ñÑ ¿¡Σ«α¼áµ¿∩ ¡«ß¿Γ í«½ÑѠ߬αδΓδ⌐ ¿ áíßΓαá¬Γ-
  589.      ¡δ⌐  σáαá¬ΓÑα, ó «Γ½¿τ¿Ñ «Γ ñ½¿¡¡«ú« ß»¿ß¬á ñ¿αÑ¬Γ¿ó #define. èα«¼Ñ
  590.      Γ«ú«, óßÑ φΓ¿ »ÑαѼѡ¡δÑ ¼«úπΓ íδΓ∞ «íΩ∩ó½Ñ¡δ »α¿¡áñ½ÑªáΘ¿¼¿ ¬ Γ¿»π
  591.      days.
  592.                      êß»«½∞º«óá¡¿Ñ ñ¿αÑ¬Γ¿óδ typedef
  593.           é ¬½áßß¿τÑ߬«¼ ßΓ¿½Ñ »α«úαá¼¼¿α«óá¡¿∩ ¡á æ¿ Γ¿»δ, «»αÑñѽ∩ѼδÑ
  594.      »«½∞º«óáΓѽѼ, αÑñ¬« ¿¼Ñ¡«ó὿ß∞, ºá ¿ß¬½ετÑ¡¿Ñ¼ ßΓαπ¬Γπα ¿ ß¼ÑßÑ⌐,
  595.      »ÑαÑñ  ¬«Γ«α묨  ¡Ñ«íσ«ñ¿¼«  ßΓáó¿Γ∞ ¬½ετÑóδÑ ß½«óá - ß««ΓóÑßΓóÑ¡¡«
  596.      struct ¿½¿ union.
  597.  
  598.           é ß«óαѼѡ¡«¼ »α«úαá¼¼¿α«óá¡¿¿ ¡á æ¿ »α¿ ¿ß»«½∞º«óá¡¿¿  ñ¿αѬ-
  599.      Γ¿óδ  typedef  ¿ß»«½∞ºπÑΓß∩ ñαπú«⌐ πα«óÑ¡∞ ß«¬αδΓ¿∩ ¿¡Σ«α¼áµ¿¿. ¥Γ«
  600.      »«ºó«½∩ÑΓ ßó∩ºáΓ∞ ñá¡¡δ⌐ Γ¿» ñá¡¡δσ /ó¬½ετá∩ ßΓαπ¬Γπαδ ¿ »ÑαÑτ¿ß½∩-
  601.      Ñ¼δÑ  Γ¿»δ ñá¡¡δσ/ ß ¡Ñ¬«Γ«αδ¼ ¿¼Ñ¡Ñ¼, á ºáΓѼ «íΩ∩ó½∩Γ∞ »ÑαѼѡ¡δÑ
  602.      ñá¡¡«ú« Γ¿»á. Åα¿óÑñѼ ¡Ñ߬«½∞¬« »α¿¼Ñα«ó «»αÑñѽѡ¿∩ Γ¿»«ó  ó¼ÑßΓÑ
  603.      ß «íΩ∩ó½Ñ¡¿∩¼¿ »ÑαѼѡ¡δσ:
  604.           
  605.           êß»«½∞º«óá¡¿Ñ  ¬½ετÑó«ú«  ß½«óá  typedef  »«óδΦáÑΓ  τ¿ΓáѼ«ßΓ∞
  606.      »α«úαá¼¼, ¬α«¼Ñ Γ«ú« «¡« »«ºó«½∩ÑΓ ¡Ñ «úαá¡¿τ¿óáΓ∞ß∩ «ñ¡¿¼ πτáßΓ¬«¼
  607.      »α«úαá¼¼δ,  ó ¬«Γ«α«¼ «íδτ¡« «»αÑñѽ∩εΓß∩ Γ¿»δ, á αáß»α«ßΓαá¡¿Γ∞ ¿σ
  608.      «»αÑñѽѡ¿Ñ ¡á óßε »α«úαá¼¼π.
  609.                       ÄíΩ∩ó½Ñ¡¿Ñ Σπ¡¬µ¿⌐ Γ¿»á void
  610.           é »Ñαó«¡áτá½∞¡«¼ «»αÑñѽѡ¿¿ ∩ºδ¬á æê ¬áªñá∩ Σπ¡¬µ¿∩ ó«ºóαáΘá-
  611.      ½á º¡áτÑ¡¿Ñ ¬á¬«ú«-½¿í« Γ¿»á. àß½¿ Γ¿» íδ½ ¡Ñ «»αÑñѽѡ, ßτ¿ΓὫß∞,
  612.      τΓ« Σπ¡¬µ¿∩ ¿¼ÑÑΓ Γ¿» int. Æ«τ¡« ΓᬠªÑ, Σπ¡¬µ¿∩, ó«ºóαáΘáóΦá∩  ¡Ñ-
  613.      «»αÑñѽѡ¡«ú«  Γ¿»á  π¬áºáΓѽ¿, ßτ¿Γá½áß∞ ó«ºóαáΘáεΘÑ⌐ π¬áºáΓѽ∞ ¡á
  614.      Γ¿» char,Γ«½∞¬« »«Γ«¼π, τΓ« «¡á ñ«½ª¡á σ«Γ∞ τΓ«-Γ« ó«ºóαáΘáΓ∞.
  615.           ÆÑ»Ñα∞ ªÑ ó ¡áΦѼ αáß»«α∩ªÑ¡¿¿ ¿¼ÑÑΓß∩ ßΓá¡ñáαΓ¡δ⌐  Γ¿»  void,
  616.      ¬«Γ«αδ⌐  ¼«ªÑΓ  ßτ¿ΓáΓ∞ß∩ τѼ-Γ« óα«ñÑ "¡π½Ñó«ú«" Γ¿»á. ïεíá∩ Σπ¡¬-
  617.      µ¿∩, ¬«Γ«αá∩ ¡Ñ ó«ºóαáΘáÑΓ º¡áτÑ¡¿∩ ó ∩ó¡«¼ ó¿ñÑ, ñ«½ª¡á íδΓ∞ «»αÑ-
  618.      ñѽѡᠠ¬á¬  ¿¼ÑεΘá∩ Γ¿» void. îѪñπ »α«τ¿¼, ¼¡«ú¿Ñ ¿º í¿í½¿«ΓÑτ¡δσ
  619.      »α«µÑñπα ñ¿¡á¼¿τÑ߬«ú« αáß»αÑñѽѡ¿∩ »á¼∩Γ¿,  ΓᬿѠ ¬á¬  ¡á»α¿¼Ñα,
  620.      malloc,  ¿¼ÑεΓ  Γ¿» void*. ¥Γ« º¡áτ¿Γ, τΓ« «¡¿ ó«ºóαáΘáεΓ π¬áºáΓѽ∞
  621.      íѺ «»αÑñѽѡ¡«ú« Γ¿»á, ¬«Γ«αδ⌐ ºáΓѼ /ó Æπαí«-æ¿/ ¼«ªÑΓ íδΓ∞ »α¿ß-
  622.      ó«Ñ¡  π¬áºáΓÑ½ε  ½εí«ú« Γ¿»á, íѺ »α¿óÑñÑ¡¿∩ Γ¿»«ó /σ«Γ∩ »α¿óÑñÑ¡¿Ñ
  623.      Γ¿»«ó ñ«½ª¡« »α¿¼Ñ¡∩Γ∞ß∩ ñ½∩ ß«σαá¡Ñ¡¿∩ »ÑαÑ¡«ß¿¼«ßΓ¿/.
  624.                         êß»«½∞º«óá¡¿Ñ αáßΦ¿αÑ¡¿⌐
  625.           é ∩ºδ¬Ñ æ¿ ¿¼ÑÑΓß∩ ¡Ñ¬«Γ«α«Ñ ¬«½¿τÑßΓó« αáßΦ¿αÑ¡¿⌐, π½πτΦáεΘ¿σ
  626.      τ¿ΓáѼ«ßΓ∞ »α«úαá¼¼, ºá¼Ñ¡∩εΘ¿σ ¡Ñ¬«Γ«αδÑ á¡áσα«¡¿º¼δ ¿ »«ºó«½∩εΘ¿σ
  627.      »α«ñó¿¡πΓ∞ß∩ ó»ÑαÑñ. Åα¿óÑñѼ ¬αáΓ¬¿⌐ ß»¿ß«¬.
  628.                            æΓ᫬«óδÑ ½¿ΓÑαá½δ
  629.           é ¬½áßß¿τÑ߬«¼ æ¿ ¡Ñ«íσ«ñ¿¼« í佫 ¿ß»«½∞º«óáΓ∞ ¡Ñ¬«Γ«αδÑ  ß¿¼-
  630.      ó«½δ  »α«ñ«½ªÑ¡¿∩ ¿½¿ ¬á¬¿Ñ-Γ« ó¿ñδ ó∩ºδóá¡¿∩ ñ½∩ Γ«ú«, τΓ«íδ ¿¼ÑΓ∞
  631.      ó »α«úαἼѠßΓ᫬¿ í«½∞ΦÑ⌐ ñ½¿¡δ. é ß«óαѼѡ¡«¼ æ¿ ßΓ᫬«óδÑ  ½¿ΓÑ-
  632.      αá½δ ¼«úπΓ ß»«¬«⌐¡« αáß»«½áúáΓ∞ß∩ ¡á ¡Ñ߬«½∞¬¿σ ßΓ᫬áσ, ¬á¬ ó ß½Ñ-
  633.      ñπεΘѼ »α¿¼ÑαÑ:
  634.           
  635.                  ÿÑßΓ¡áñµáΓÑα¿τ¡δÑ ß¿¼ó«½∞¡δÑ ¬«¡ßΓá¡Γδ
  636.           é ¬½áßß¿τÑ߬«¼ æ¿ escape-»«ß½Ññ«óáΓѽ∞¡«ßΓ¿, «»αÑñѽ∩εΘ¿Ñ ¬«¡-
  637.      ¬αÑΓ¡δÑ  ß¿¼ó«½δ  ó ¬«ñÑ ASCII ñáó὿ß∞ ó ó«ß∞¼Ñα¿τ¡«¼ /ß «ß¡«óá¡¿Ñ
  638.      8/ ¬«ñÑ. ¥Γ« í佫 «íπß½«ó½Ñ¡« ΓѼ, τΓ« »Ñαó«¡áτá½∞¡« æ¿  αáºαáíáΓδ-
  639.      óá½ß∩  ñ½∩  ¼áΦ¿¡,  ó ¬«Γ«αδσ ñó«¿τ¡δÑ τ¿ß½á »αÑñßΓáó½∩½¿ß∞ ó ó¿ñÑ
  640.      ó«ß∞¼Ñα¿τ¡δσ.
  641.           ÆÑ»Ñα∞ í«½∞Φ¿¡ßΓó«  ¬«¼»∞εΓÑα«ó  ¿ß»«½∞ºπÑΓ  ΦÑßΓ¡áñµáΓÑα¿τ¡πε
  642.      /«ß¡«óá¡¿Ñ  16/ ß¿ßΓѼπ ßτ¿ß½Ñ¡¿∩ ñ½∩ »αÑñßΓáó½Ñ¡¿∩ ñó«¿τ¡δσ τ¿ßѽ.
  643.      Å« φΓ«⌐ »α¿τ¿¡Ñ ß«óαѼѡ¡δ⌐ æ¿ »«ºó«½∩ÑΓ «»αÑñѽ∩Γ∞ ß¿¼ó«½∞¡δÑ ¬«¡-
  644.      ßΓá¡Γδ  ó  ΦÑßΓ¡áñµáΓÑα¿τ¡«⌐ Σ«α¼Ñ. ÄíΘ¿⌐ Σ«α¼áΓ Γᬫú« »αÑñßΓáó½Ñ-
  645.      ¡¿∩: '\xDD', úñÑ dd »αÑñßΓáó½∩ÑΓ  «ñ¡π  ¿½¿  ñóÑ  ΦÑßΓ¡áñµáΓÑα¿τ¡δσ
  646.      µ¿Σα  /0...9,  A...F/. Æá¬¿Ñ escape-»«ß½Ññ«óáΓѽ∞¡«ßΓ¿ ¼«úπΓ ¡Ñ»«ß-
  647.      αÑñßΓóÑ¡¡« »α¿ßóá¿óáΓ∞ß∩ ß¿¼ó«½∞¡δ¼ »ÑαѼѡ¡δß ¿½¿  óßΓαá¿óáΓ∞ß∩  ó
  648.      ßΓ᫬¿, ¡á»α¿¼Ñα: ch='\x20'.
  649.  
  650.                               ç¡á¬«óδÑ Γ¿»δ
  651.           è½áßß¿τÑ߬¿⌐  æ¿ ßτ¿Γá½, τΓ« óßÑ Γ¿»δ ß µÑ½«⌐ «ß¡«ó«⌐ ∩ó½∩εΓß∩
  652.      º¡á¬«ó묨, »«φΓ«¼π ¿¼Ñ½ß∩ ¼«ñ¿Σ¿¬áΓ«α Γ¿»á unsigned ñ½∩ «íÑß»ÑτÑ¡¿∩
  653.      ó«º¼«ª¡«ßΓ¿  ¿º¼Ñ¡¿Γ∞  φΓ«  «íßΓ«∩Γѽ∞ßΓó«. Å« π¼«½τá¡¿ε »ÑαѼѡ¡δÑ
  654.      Γ¿»á char αáßß¼áΓα¿ó὿ß∞ ¬á¬ º¡á¬«óδÑ, τΓ« º¡áτ¿½«, τΓ« ¿σ  ñ¿á»«-
  655.      º«¡ º¡áτÑ¡¿⌐ ½Ñª¿Γ ó »αÑñѽáσ «Γ -127 ñ« 127.
  656.           é  ß«óαѼѡ¡δσ ¼¿¬α«¬«¼»∞εΓÑαáσ Γ¿» char τáßΓ« ßτ¿ΓáÑΓß∩ íѺº-
  657.      ¡á¬«óδ¼, ¿ ó Æπαí«-æ¿ ¿¼ÑÑΓß∩ »áαá¼ÑΓα ¬«¼»¿½∩µ¿¿, »«ºó«½∩εΘ¿⌐ ßñÑ-
  658.      ½áΓ∞  π¼«½τ᡿Ѽ.  é Γᬫ¼ ß½πτáÑ ¼«ª¡« «íΩ∩ó¿Γ∞ ¿ñÑ¡Γ¿Σ¿¬áΓ«α Γ¿»á
  659.      signed char, Γ.¬. ó ß«óαѼѡ¡«¼ æ¿ ¿ß»«½∞ºπÑΓß∩ ó ¬áτÑßΓóÑ  ¼«ñ¿Σ¿-
  660.      ¬áΓ«αá ß½«ó« signed.
  661.            Éáß»α«ßΓαá¡Ñ¡¡δÑ «Φ¿í¬¿ »α¿ »α«úαá¼¼¿α«óá¡¿¿ ¡á æ¿
  662.           Åα«úαá¼¼¿ßΓδ,  ó»ÑαóδÑ  ßΓὬ¿óáεΘ¿Ñß∩  ß ∩ºδ¬«¼ æ¿, ß«óÑαΦáεΓ
  663.      »α¿í½¿º¿Γѽ∞¡« «ñ¡¿ ¿ ΓÑ ªÑ «Φ¿í¬¿. îδ αáß߬áªÑ¼ « ¡¿σ, á ΓᬪѠ»«-
  664.      »δΓáѼß∩ »«ß«óÑΓ«óáΓ∞, ¬á¬ ¿σ ¿ºíѪáΓ∞.
  665.                        æΓ᫬¿ æ¿ ¿ »πΓ¿ MS-DOS'a
  666.           èᬠ ¿ºóÑßΓ¡«, «íαáΓ¡á∩ ¬«ßá∩ τÑαΓá (\) ó ß¿ßΓѼѠMS-DOS «º¡á-
  667.      τáÑΓ ¿¼∩ ñ¿αÑ¬Γ«α¿¿. é æ¿, «ñ¡á¬«, «¡á  «º¡áτáÑΓ  ß¿¼ó«½  escape  ó
  668.      ßΓ᫬Ñ. Æá¬«Ñ ß«ó»áñÑ¡¿Ñ »«α«ªñáÑΓ ¡Ñ¬«Γ«α«Ñ »α«í½Ñ¼δ, Ñß½¿ ¿¼∩ ñ¿-
  669.      αÑ¬Γ«α¿¿ ñáÑΓß∩ »α¿ »«¼«Θ¿ ßΓ᫬«ó«⌐ ¬«¡ßΓá¡Γδ. ìá»α¿¼Ñα, ¡á»ÑτáΓáó
  670.      "c:\new\tools.c"  óδ  «ª¿ñáÑΓÑ »«½πτ¿Γ∞ Σá⌐½ TOOLS.C, ¡áσ«ñ∩Θ¿⌐ß∩ ó
  671.              ñ¿αÑ¬Γ«α¿¿ NEW ¡á ñ¿ß¬Ñ æ. ¥Γ«ú« ¡Ñ »α«¿º«⌐ñÑΓ. é¼ÑßΓ« φΓ«-
  672.      ú«  ß¿¼ó«½  \n  ó맮óÑΓ »ÑαÑσ«ñ ¡á ¡«óπε ßΓ᫬π /LF/, á ß¿¼ó«½ \t -
  673.      »ÑτáΓ∞ º¡á¬á Γáíπ½∩µ¿¿. é αѺπ½∞ΓáΓÑ ó  ¿¼Ñ¡¿  óáΦÑú«  Σá⌐½á  íπñπΓ
  674.      »α¿ßπΓßΓó«óáΓ∞ ß¿¼ó«½δ »ÑαÑσ«ñá ¡á ¡«óπε ßΓα«¬π ¿ Γáíπ½∩µ¿¿. DOS ¡Ñ
  675.      ºáσ«τÑΓ αáí«ΓáΓ∞ ß Γᬫ⌐ ßΓ᫬«⌐, Γ.¬. ß»Ñµ¿á½∞¡δÑ ß¿¼ó«½δ ¡Ñ ¼«úπΓ
  676.      íδΓ∞  τáßΓ∞ε  ¿¼Ñ¡¿  Σá⌐½á.  Åαáó¿½∞¡«⌐  ßΓ᫬«⌐  íπñÑΓ  ß½ÑñπεΘá∩:
  677.      "c:\\new\\tooll.c".
  678.              Åαáó¿½∞¡«Ñ ¿ ¡Ñ»αáó¿½∞¡«Ñ ¿ß»«½∞º«óá¡¿Ñ ßß佫¬
  679.           æß佬¿ ¡áóÑα¡∩¬á óδºδóáεΓ ¡á¿í«½∞ΦÑÑ ¬«½¿τÑßΓó« ó«»α«ß«ó π ¡á-
  680.      τ¿¡áεΘÑú«  »α«úαá¼¼¿ßΓá.  è«úñá ¿σ ß½ÑñπÑΓ ¿ß»«½∞º«óáΓ∞, á ¬«úñá ¡Ñ
  681.      ß½ÑñπÑΓ? è«úñá ¿ß»«½∞º«óáΓ∞ ¬«ßóÑ¡¡δ⌐ «»ÑαáΓ«α /*/? è«úñá ¿ß»«½∞º«-
  682.      óáΓ∞ áñαÑß¡δ⌐ «»ÑαáΓ«α /&/? èᬠ¿ºíѪáΓ∞ »«½¡«ú« ¬αáσá «»Ñαᵿ«¡¡«⌐
  683.      ß¿ßΓѼδ ó »α«µÑßßÑ αáí«Γδ?
  684.                 êß»«½∞º«óá¡¿Ñ ¡Ñ¿¡¿µ¿á½¿º¿α«óá¡¡δσ ßß佫¬
  685.           æÑα∞Ѻ¡πε «»áß¡«ßΓ∞ Γá¿Γ ºá»¿ß∞ º¡áτÑ¡¿∩ »« áñαÑßπ, σαá¡∩ΘѼπ-
  686.      ß∩  ó π¬áºáΓѽÑ, íѺ »Ñαó«¡áτá½∞¡«ú« »α¿ßó«Ñ¡¿∩ áñαÑßá φΓ«¼π π¬áºá-
  687.      Γѽε. ìá»α¿¼Ñα:
  688.           
  689.           æá¼á∩ í«½∞Φá∩ «»áß¡«ßΓ∞ ó Γ«¼, τΓ« ó í«½∞Φ¿¡ßΓóÑ  ß½πτáÑó  φΓ«
  690.      ¼«ªÑΓ «ßΓáΓ∞ß∩ ¡Ñºá¼ÑτÑ¡¡δ¼. é ñá¡¡«¼ »α¿¼ÑαÑ π¬áºáΓѽ∞ iptr ß«ñÑα-
  691.      ª¿Γ ¡Ñ¬«Γ«αδ⌐ ß½πτá⌐¡δ⌐ áñαÑß, »«  ¬«Γ«α«¼π  ºá»¿ßδóáÑΓß∩  º¡áτÑ¡¿Ñ
  692.      421. ¥Γá »α«úαá¼¼á ñ«ßΓáΓ«τ¡« ¼á½á, ΓᬠτΓ« Φá¡ßδ ¡á »«ατπ ¿¡Σ«α¼á-
  693.      µ¿¿ ¡Ñ óѽ¿¬¿. ùѼ í«½∞ΦÑ »α«úαá¼¼á, ΓѼ í«½∞ΦÑ  óÑα«∩Γ¡«ßΓ∞  Γ«ú«,
  694.      τΓ«  »« φΓ«¼π áñαÑßπ ºá»¿ßá¡á ¿¡Σ«α¼áµ¿∩. Ç Ñß½¿ ¿ß»«½∞ºπÑΓß∩ ¼á½á∩
  695.      ¼«ñѽ∞ »á¼∩Γ¿, ó ¬«Γ«α«⌐ ßÑú¼Ñ¡Γδ ¬«ñá ¿ ñá¡¡δσ ºá¡¿¼áεΓ «ñ¡« ¿  Γ«
  696.      ªÑ »α«ßΓαá¡ßΓó«, ó«º¼«ª¡« ¡áαπΦÑ¡¿Ñ µÑ½«ßΓ¡«ßΓ¿ ¼áΦ¿¡¡«ú« ¬«ñá.
  697.                                  æΓ᫬¿
  698.           îδ πªÑ ú«ó«α¿½¿, τΓ« ßΓ᫬¿ ¼«úπΓ íδΓ∞ «»αÑñÑ½Ñ¡δ ¬á¬ π¬áºáΓÑ-
  699.      ½¿ ¡á Γ¿» char ¿½¿ ¬á¬ ¼áßß¿óδ ß¿¼ó«½«ó. ÉÑτ∞ Φ½á «  Γ«¼,  τΓ«  φΓ«
  700.      »αá¬Γ¿τÑ߬¿ «ñ¡« ¿ Γ« ªÑ, ºá ¿ß¬½ετÑ¡¿Ñ¼ «ñ¡«ú« «τÑ¡∞ó᪡«ú« ¼«¼Ñ¡-
  701.      Γá: »α¿ ¿ß»«½ñ∞º«óá¡¿¿ π¬áºáΓѽ∩ ¡á Γ¿» char ¡Ñ αѺÑαó¿απÑΓß∩ ¼ÑßΓ«
  702.      ó  »á¼∩Γ¿, á »α¿ ¿ß»«½∞º«óá¡¿¿ ¼áßß¿ó«ó - αѺÑαó¿απÑΓß∩, á »ÑαѼѡ-
  703.      ¡á∩ - ¿¼∩ ¼áßß¿óá ß«ñÑαª¿Γ áñαÑß φΓ«ú« ºáαѺÑαó¿α«óá¡¡«ú« »α«ßΓαá¡-
  704.      ßΓóá.
  705.  
  706.           ìÑñ«»«¡¿¼á¡¿Ñ φΓ«ú« «íßΓ«∩Γѽ∞ßΓóá ¼«ªÑΓ »α¿óÑßΓ¿ ¬ ñóπ¼ Γ¿»á¼
  707.      «Φ¿í«¬. Éáßß¼«Γα¿¼ ß½ÑñπεΘπε »α«úαá¼¼π:
  708.           
  709.           ìá »Ñαóδ⌐ óºú½∩ñ óßÑ, óα«ñÑ íδ, ó »««α∩ñ¬Ñ. ¡Ñ߬«½∞¬«  ¬«α∩ó«,
  710.      ¡« ΓÑα»¿¼«.
  711.           Äñ¡á¬«, ó φΓ«⌐ »α«úαἼѠ»α¿ßπΓßΓóπεΓ ñóÑ «Φ¿í¬¿. ÅÑαóá∩ «Γ¡«-
  712.      ß¿Γß∩ ¬ óδαáªÑ¡¿ε scanf("%S",name). éδαáªÑ¡¿Ñ ßἫ »«  ßÑíÑ  óÑα¡«.
  713.      Æá¬  ¬á¬  name  - φΓ« π¬áºáΓѽ∞ ¡á Γ¿» char, ¡ÑΓ ¡Ñ«íσ«ñ¿¼«ßΓ¿ ßΓá-
  714.      ó¿Γ∞ »ÑαÑñ ¡¿¼ áñαÑß¡δ⌐ «»ÑαáΓ«α /&/. ì« »α«úαἼᠡѠ ºáαѺÑαó¿α«-
  715.      óá½á  ¼ÑßΓ«  ñ½∩ »ÑαѼѡ¡«⌐ name. æΓ᫬á, ¬«Γ«απε óδ óóÑñÑΓÑ, íπñÑΓ
  716.      ºá»¿ßá¡á »« Γ«¼π ß½πτá⌐¡«¼π áñαÑßπ, ¬«Γ«αδ⌐ íπñÑΓ ß«ñÑαªáΓ∞ß∩ ó »Ñ-
  717.      αѼѡ¡«⌐  name.  Æá¬á∩  ß¿Γπᵿ∩  ó맮óÑΓ  »«∩ó½Ñ¡¿Ñ »αÑñÑ»αѪñÑ¡¿∩
  718.      /Possible use of 'name' before definition/, ¡« ¡Ñ «Φ¿í¬π.
  719.           ÄΦ¿í¬á «í∩ºáΓѽ∞¡« »«∩ó¿Γß∩ ó« óΓ«α«¼ ¼ÑßΓÑ. éßÑ ñѽ« ó  óδαá-
  720.      ªÑ¡¿¿  msg="Hello,".  è«¼»¿½∩Γ«α ßτ¿ΓáÑΓ, τΓ« óδ »δΓáÑΓÑß∞ ¿º¼Ñ¡¿Γ∞
  721.      º¡áτÑ¡¿Ñ msg ¿ »α¿ßó«¿Γ∞ Ñ¼π áñαÑß ¬«¡ßΓá¡Γ¡«⌐ ßΓ᫬¿ "Helo,".  ¥Γ«
  722.      ¡Ñ󫺼«ª¡«,  Γ.¬.  ¿¼Ñ¡á  ¼áßß¿ó«ó  ∩ó½∩εΓß∩ ¬«¡ßΓá¡ΓἿ ¿ ¡Ñ ¼«úπΓ
  723.      íδΓ∞ ¿º¼Ñ¡Ñ¡δ /ΓᬠªÑ, ¬á¬ 7 ∩ó½∩ÑΓß∩ ¬«¡ßΓá¡Γ«⌐, ¿ ¡Ñ½∞º∩ ¡á»¿ßáΓ∞
  724.      "7=i"/.  é  φΓ«¼ ß½πτáÑ ¬«¼»¿½∩Γ«α óδñáßΓ ß««íΘÑ¡¿Ñ Lvalue reguired
  725.      /ΓαÑíπÑΓß∩ L-º¡áτÑ¡¿Ñ/.
  726.           èᬠí«α«Γ∞ß∩ ß φΓ¿¼¿ «Φ¿í¬á¼¿?  Åα«ßΓÑ⌐Φ¿⌐  ß»«ß«í  ß«ßΓ«¿Γ  ó
  727.      ß»«ß«í«ó «íΩ∩ó½Ñ¡¿∩ »ÑαѼѡ¡δσ name ¿ msg:
  728.           
  729.           ¥Γ«ú«  ó»«½¡Ñ  ñ«ßΓáΓ«τ¡«. ä½∩ »ÑαѼѡ¡«⌐ name ºáαѺÑαó¿α«óá¡«
  730.      ¼ÑßΓ«, ¬πñá íπñÑΓ ºá»¿ßδóáΓ∞ß∩ óó«ñ¿¼á∩ óἿ ßΓ᫬á, ¿ ¿¼ÑÑΓß∩ ó«º-
  731.      ¼«ª¡«ßΓ∞  »α¿ßó«Ñ¡¿∩  »ÑαѼѡ¡«⌐  msg áñαÑßá ßΓ᫬¿ "Hello, ". àß½¿
  732.      ªÑ, »« ¬á¬¿¼-½¿í« »α¿τ¿¡á¼, ¡Ñ«íσ«ñ¿¼« ß«σαá¡¿Γ∞ «íΩ∩ó½Ñ¡¿∩ ó  »Ñα-
  733.      ó«¡áτá½∞¡«¼ ó¿ñÑ, ¡Ñ«íσ«ñ¿¼« ¿º¼Ñ¡¿Γ∞ »α«úαá¼¼π ß½ÑñπεΘ¿¼ «íαẫ¼:
  734.           
  735.           é맮ó  Σπ¡¬µ¿¿ malloc αѺÑαó¿απÑΓ 10 íá⌐Γ »á¼∩Γ¿ ¿ »α¿ßóá¿óáÑΓ
  736.      áñαÑß φΓ¿σ ñÑß∩Γ¿ íá⌐Γ«ó »ÑαѼѡ¡«⌐ name, ΓᬠαÑΦáÑΓß∩ ¡áΦá  »Ñαóá∩
  737.      »α«í½Ñ¼á.  öπ¡¬µ¿∩ strcpy »α«¿ºó«ñ¿Γ »«ß¿¼ó«½∞¡«Ñ ¬«»¿α«óá¡¿Ñ ¬«¡ß-
  738.      Γá¡Γ¡«⌐ ßΓ᫬¿ "Hello, " ó ¼áßß¿ó msg.
  739.            êß»«½∞º«óá¡¿Ñ »α¿ßó«Ñ¡¿∩ /=/ ó¼ÑßΓ« αáóÑ¡ßΓóá /==/
  740.           é ∩ºδ¬áσ Åá߬á½∞ ¿ üÑ⌐ß¿¬ »α«óÑα¬á ¡á αáóÑ¡ßΓó«  ñѽáÑΓß∩  »α¿
  741.      »«¼«Θ¿ óδαáªÑ¡¿∩ if (á=ß). é ∩ºδ¬Ñ æ¿ φΓá ¬«¡ßΓαπ¬µ¿∩ ñ«»πßΓ¿¼á, ¡«
  742.      ¿¼ÑÑΓ ñαπú«Ñ º¡áτÑ¡¿Ñ. Éáßß¼«Γα¿¼ ¼á½Ñ¡∞¬¿⌐ Σαáú¼Ñ¡Γ »α«úαá¼¼δ:
  743.           if(a=b) puts("Equal");
  744.           else puts("Not equal");
  745.           àß½¿ íδ óδ »¿ß὿ ¡á Åá߬á½Ñ ¿½¿ ¡á üÑ⌐ß¿¬Ñ, Γ« ó  ß½πτáÑ  αá-
  746.      óÑ¡ßΓóá  á  ¿ b, óδ «ª¿ñ὿ »«∩ó½Ñ¡¿∩ ß««íΘÑ¡¿∩ Equal /αáó¡«/ ¿ Not
  747.      equal /¡Ñ αáó¡«/ ó »α«Γ¿ó¡«¼ ß½πτáÑ. é æ¿ φΓ« ¡Ñ Γá¬. é ñá¡¡«¼ ß½π-
  748.      τáÑ  óδαáªÑ¡¿Ñ á=b «º¡áτáÑΓ: "»α¿ßó«¿Γ∞ »ÑαѼѡ¡«⌐ á º¡áτÑ¡¿Ñ b", ¿
  749.      óßÑ óδαáªÑ¡¿Ñ »α¿¼ÑΓ º¡áτÑ¡¿Ñ b. Æá¬¿¼ «íαẫ¼,  »α¿óÑñÑ¡¡δ⌐  Σαáú-
  750.      ¼Ñ¡Γ  »α¿ßó«¿Γ  »ÑαѼѡ¡«⌐  á  º¡áτÑ¡¿Ñ  b, ºáΓѼ óδóÑñÑΓ ¡á »ÑτáΓ∞
  751.      Equal, Ñß½¿ b ¡Ñ αáó¡« ¡π½ε, ¿ Not equal ó »αΓ¿ó¡«¼ ß½πτáÑ. ìá  ßá-
  752.      ¼«¼ ñѽѠóá¼ ΓαÑí«óὫß∞ ß½ÑñπεΘÑÑ:
  753.           if(a==b) puts("Equal");
  754.           else puts("Not equal");
  755.                Åα«»π߬ «»ÑαáΓ«αá brreak ó «»ÑαáΓ«αÑ switch
  756.           Ä»ÑαáΓ«α  break  ¿ß»«½∞ºπÑΓß∩ ó «»ÑαáΓ«αÑ switch ñ½∩ «¬«¡τá¡¿∩
  757.      «íαáí«Γ¬¿ «»ÑαÑñѽѡ¡«⌐ ¼ÑΓ¬¿. ìÑ ºáíΣóá⌐ΓÑ  φΓ«ú«.  àß½¿  «»ÑαáΓ«α
  758.      »α«»πΘÑ¡, íπñπΓ ¿ß»«½¡Ñ¡δ «»ÑαáΓ«αδ, ß««ΓóÑΓßΓóπεΘ¿Ñ ß½ÑñπεΘ¿¼ ¼ÑΓ-
  759.      ¬á¼.
  760.  
  761.                           ê¡ñѬßᵿ∩ ¼áßß¿ó«ó
  762.           ìÑ ºóíδóá⌐ΓÑ, τΓ« ¼áßß¿óδ ¡áτ¿¡áεΓß∩ ß ¡π½Ñó«ú« φ½Ñ¼Ñ¡Γá  [0],
  763.      á  ¡Ñ ß »Ñαó«ú« [1]. ìá¿í«½ÑÑ αáß»α«ßΓαá¡Ñ¡¡«⌐ «Φ¿í¬«⌐ ∩ó½∩ÑΓß∩ ¡á-
  764.      »¿ßá¡¿Ñ τÑú«-½¿í« »«ñ«í¡«ú«:
  765.           é ñá¡¡«⌐ »α«úαἼѠ »Ñαóδ⌐  φ½Ñ¼Ñ¡Γ  ¼áßß¿óá  list  /á  ¿¼Ñ¡¡«
  766.      list[0]/  «ßΓáÑΓß∩ ¡Ñ¿¡¿µ¿á½¿º¿α«óá¡¡δ¼, ¬α«¼Ñ Γ«ú«, ñá¡¡δÑ ºá»¿ßδ-
  767.      óáεΓß∩ ó ¡ÑßπΘÑßΓóπεΘπε ∩τÑ⌐¬π ¼áßß¿óá - list[100] - »α¿ φΓ«¼, ó«º-
  768.      ¼«ª¡«, π¡¿τΓ«ªáεΓß∩ ñαπú¿Ñ ñá¡¡δÑ. Åαáó¿½∞¡δ⌐ óáα¿á¡Γ íπñÑΓ Γᬿ¼:
  769.                      ÅÑαÑñáτá º¡áτÑ¡¿∩ ó¼ÑßΓ« áñαÑßá
  770.           Å«ß¼«Γα¿ΓÑ  ¡á  ß½ÑñπεΘπε  »α«úαá¼¼π ¿ »«»δΓá⌐ΓÑß∞ «»αÑñѽ¿Γ∞,
  771.      τΓ« ó ¡Ñ⌐ ¡Ñ Γá¬:
  772.           
  773.           ÄΦ¿í¬á ºá¬½ετÑ¡á ó óδαáªÑ¡¿¿ scanf("%d %d",a,b). èᬠóδ »«¼¡¿-
  774.      ΓÑ, Σπ¡¬µ¿∩ scanf ΓαÑíπÑΓ »ÑαÑñáτ¿ áñαÑßá, á ¡Ñ º¡áτÑ¡¿∩. Æ« ªÑ ßá-
  775.      ¼«Ñ «Γ¡«ß¿Γß∩ ¬« óßѼ Σπ¡¬µ¿∩¼, τ∞¿¼¿ Σ«α¼á½∞¡δ¼¿ »áαá¼ÑΓαἿ ∩ó½∩-
  776.      εΓß∩ π¬áºáΓѽ¿. äá¡¡á∩ »α«úαἼᠫΓΓαá¡ß½¿απÑΓß∩ ¿ ºá»πßΓ¿Γß∩, Γ.¬.
  777.      Σπ¡¬µ¿∩ scanf ó«º∞¼ÑΓ ½εíδÑ ß½πτá⌐¡δÑ º¡áτÑ¡¿∩, ¡áσ«ñ∩Θ¿Ñß∩ ó ∩τÑ⌐-
  778.      ¬áσ  á  ¿  b  ¿ ¿ß»«½∞ºπÑΓ ¿σ ¬á¬ áñαÑßá, »« ¬«Γ«αδ¼ íπñπΓ ºá»¿ßá¡δ
  779.      óóÑñÑ¡¡δÑ óἿ º¡áτÑ¡¿∩.
  780.           Åαáó¿½∞¡«Ñ   óδαáªÑ¡¿Ñ   ñ«½ª¡«   óδú½∩ñÑΓ∞   Γá¬:   scanf("%d
  781.      %d",&a,&b);  Γᬿ¼ «íαẫ¼ Σπ¡¬µ¿¿ scanf »ÑαÑñáεΓß∩ áñαÑßá »ÑαѼѡ-
  782.      ¡δσ á ¿ b, á óó«ñ¿¼δÑ óἿ º¡áτÑ¡¿∩ ºá»¿ΦπΓß∩ ó φΓ¿ »ÑαѼѡ¡δÑ. Æá-
  783.      ¬á∩  ªÑ  ß¿Γπᵿ∩ ¼«ªÑΓ »α«¿º«⌐Γ¿ ¿ »α¿ ¡á»¿ßá¡¿¿ ß«íßΓóÑ¡¡δσ Σπ¡¬-
  784.      µ¿⌐. ùΓ« íπñÑΓ, ¡á»α¿¼Ñα, Ñß½¿ Σπ¡¬µ¿ε swap, «»αÑñѽѡ¡πε ó αáºñѽÑ
  785.      «í π¬áºáΓѽ∩σ, »ÑαÑ»¿ßáΓ∞ ß½ÑñπεΘ¿¼ «íαẫ¼:
  786.           ÅÑαѼѡ¡δÑ i ¿ j íπñπΓ ¿¼ÑΓ∞ «ñ¡¿ ¿ ΓÑφÑ º¡áτÑ¡¿∩ ¬á¬ ñ«, Γáá¬
  787.      ¿ »«ß½Ñ ó맮óá Σπ¡¬µ¿¿ swap; º¡áτÑ¡¿∩ »« áñαÑßá¼ 421 ¿ 53 »«¼Ñ¡∩εΓ-
  788.      ß∩  ¼ÑßΓἿ. ¥Γ« ¼«ªÑΓ »α¿óÑßΓ¿ ¬ ¡Ñ«τÑó¿ñ¡δ¼ ¿ Γαπñ¡««Γ߽Ѫ¿óáѼδ¼
  789.      »α«í½Ñ¼á¼.
  790.           èᬠφΓ«ú« ¿ºíѪáΓ∞?
  791.           êß»«½∞ºπ⌐ΓÑ »α«Γ«Γ¿»δ ¿ »«½¡δÑ «»αÑñѽѡ¿∩ Σπ¡¬µ¿⌐.
  792.           àß½¿ íδ Σπ¡¬µ¿∩ swap íδ½á «»αÑñѽѡδ Γá¬, ¬á¬ φΓ« í佫 ßñѽᡫ
  793.      αá¡ÑÑ  ó ñá¡¡«⌐ ú½áóÑ, ó »αα¿óÑñÑ¡¡«⌐ óδΦÑ óÑαß¿¿ Σπ¡¬µ¿¿ main ¬«¼-
  794.      »¿½∩Γ«α óδñá½ íδ «Φ¿í¬π. àß½¿ ªÑ «»αÑñѽ¿Γ∞ ÑÑ  Γá¬,  ¬á¬  »«¬áºá¡«
  795.      ¡¿ªÑ, »α«úαá¼¼á ß¬«¼»¿½¿απÑΓß∩ íѺ «Φ¿í«¬,
  796.           void swap(a,b)
  797.           int *a,*b;
  798.           {
  799.           ...
  800.           }
  801.           éδó«ñ  «»αÑñѽѡ¿⌐ »ÑαѼѡ¡δσ á ¿ b ¿º ß¬«í«¬ «Γ¼Ñ¡∩ÑΓ »α«óÑα-
  802.      ¬π ¡á «Φ¿í¬¿, ¬«Γ«αá∩ ¿¼Ñ½á íδ ¼ÑßΓ« ó »α«Γ¿ó¡«¼ ß½πτáÑ, τΓ«  ∩ó½∩-
  803.      ÑΓß∩ «ñ¡«⌐ ¿º ú½áó¡δσ »α¿τ¿¡ ¡Ñ ¿ß»«½∞º«óáΓ∞ ¬½áßß¿τÑ߬¿⌐ ßΓ¿½∞ «»-
  804.      αÑñѽѡ¿∩ Σπ¡¬µ¿⌐.
  805.                             æτáßΓ½¿ó«ú« »πΓ¿
  806.           èᬠ¼δ π»«¼¿¡á½¿ ó »αÑñδñπΘÑ⌐ ú½áóÑ, ó ñóπσ ú½áóáσ  ¡Ñ󫺼«ª¡«
  807.      ¿º½«ª¿Γ∞ »«½¡«Ñ απ¬«ó«ñßΓó« »« æ¿. îδ »«»δΓ὿ß∞ ñáΓ∞ ó᪡Ñ⌐Φ¿Ñ ΓÑ-
  808.      ¼δ. ÆÑ»Ñα∞ óá¼ ß½ÑñπÑΓ, á, ó»α«τѼ, ¿  ß½Ññ«óὫ,  ¡áíαáΓ∞  »α¿¼Ñαδ
  809.      »α«úαá¼¼, ß¬«¼»¿½¿α«óáΓ∞ ¿ ºá»πßΓ¿Γ∞ ¿σ, á ú½áó¡«Ñ - ¼«ñ¿Σ¿µ¿α«óáΓ∞
  810.      ¿σ ¿ »«ß¼«ΓαÑΓ∞, τΓ« ¿º φΓ«ú« óδ⌐ñÑΓ. êΓá¬, ßτáßΓ½¿ó«ú« »πΓ¿.
  811.