-- ·|­û / µù¥U -- ¡@
¡@±b¸¹¡G
¡@±K½X¡G
¡@ | µù¥U | §Ñ°O±K½X
3/26 ·s®Ñ¨ì¡I 3/19 ·s®Ñ¨ì¡I 3/14 ·s®Ñ¨ì¡I 12/12 ·s®Ñ¨ì¡I
ÁʮѬyµ{¡EQ & A¡E¯¸°È¯d¨¥ª©¡E«ÈªA«H½c
¢x 3ds Max¢x Maya¢x Rhino¢x After Effects¢x SketchUp¢x ZBrush¢x Painter¢x Unity¢x
¢x PhotoShop¢x AutoCad¢x MasterCam¢x SolidWorks¢x Creo¢x UG¢x Revit¢x Nuke¢x
¢x C#¢x C¢x C++¢x Java¢x ¹CÀ¸µ{¦¡¢x Linux¢x ´O¤J¦¡¢x PLC¢x FPGA¢x Matlab¢x
¢x Àb«È¢x ¸ê®Æ®w¢x ·j¯Á¤ÞÀº¢x ¼v¹³³B²z¢x Fluent¢x VR+AR¢x ANSYS¢x ²`«×¾Ç²ß¢x
¢x ³æ´¹¤ù¢x AVR¢x OpenGL¢x Arduino¢x Raspberry Pi¢x ¹q¸ô³]­p¢x Cadence¢x Protel¢x
¢x Hadoop¢x Python¢x Stm32¢x Cortex¢x Labview¢x ¤â¾÷µ{¦¡¢x Android¢x iPhone¢x
¥i¬d®Ñ¦W,§@ªÌ,ISBN,3dwoo®Ñ¸¹
¸Ô²Ó®ÑÄy¤ÀÃþ

C++¤Ï¶×½s»P°f¦V¤ÀªR§Þ³N´¦¯µ¡]²Ä2ª©¡^

( ²Åé ¦r)
§@ªÌ¡GªLªQ,±i©µ²MÃþ§O¡G1. -> µ{¦¡³]­p -> C++ -> C++
ĶªÌ¡G
¥Xª©ªÀ¡G¾÷±ñ¤u·~¥Xª©ªÀC++¤Ï¶×½s»P°f¦V¤ÀªR§Þ³N´¦¯µ¡]²Ä2ª©¡^ 3dWoo®Ñ¸¹¡G 55133
¸ß°Ý®ÑÄy½Ð»¡¥X¦¹®Ñ¸¹¡I

¡i¯Ê®Ñ¡j
NT°â»ù¡G 695 ¤¸

¥Xª©¤é¡G9/1/2021
­¶¼Æ¡G586
¥úºÐ¼Æ¡G0
¯¸ªø±ÀÂË¡G
¦L¨ê¡G¶Â¥Õ¦L¨ê»y¨t¡G ( ²Åé ª© )
¥[¤JÁʪ«¨® ¢x¥[¨ì§Úªº³Ì·R
(½Ð¥ýµn¤J·|­û)
ISBN¡G9787111689911
§@ªÌ§Ç¡@|¡@ĶªÌ§Ç¡@|¡@«e¨¥¡@|¡@¤º®e²¤¶¡@|¡@¥Ø¿ý¡@|¡@§Ç
(²Åé®Ñ¤W©Ò­z¤§¤U¸ü³sµ²¯Ó®É¶O¥\, ®¤¤£¾A¥Î¦b¥xÆW, ­YŪªÌ»Ý­n½Ð¦Û¦æ¹Á¸Õ, ®¤¤£«OÃÒ)
§@ªÌ§Ç¡G

ĶªÌ§Ç¡G

«e¨¥¡G

¤º®e²¤¶¡G

³o¬O¤@³¡¨t²ÎÁ¿¸Ñ¤Ï¶×½s»P°f¦V¤ÀªR§Þ³N­ì²z¡B¬yµ{¡B¤èªk©M¹ê¥Î§Þ¥©ªºµÛ§@¡C
¥»®Ñ²Ä1ª©¥Xª©¤_2011¦~¡A10¦~¨ÓºZ¾P¤£°I¡A¦¨¬°¤Ï¶×½s»P°f¦V¤uµ{»â°ìªº¼Ð§Ó©ÊµÛ§@¡A³Q¼Æ¤Q¸U¦w¥þ¤uµ{®v©MC++¤uµ{®v©^¬°ºÀÄ_¡C¦b¥þ²y¾Ç³N¬É©M¥ø·~¬É³£¨É¦³²±ÅA¡A¬G²Ä2ª©±o¨ì¤F¥þ²y15¦ì¦w¥þ§Þ³N±M®aªº¶É¤O±ÀÂË¡C²Ä2ª©¦b§Þ³N¡B¤u¨ã©M®×¨Òµ¥¤è­±°µ¤F¤j¶qªº§ó·s©M¸É¥R¡C
³q¹L¥»®Ñ¡A§A±N´x´¤¥H¤Uª¾ÃѩΧޯà¡G
?°f¦V¤ÀªR§Þ³Nªº¤u¨ã©M­ì²z¡F
?°f¦V¤ÀªR§Þ³Nªº¬yµ{©M¤èªk¡F
?°f¦V¤ÀªR§Þ³NªººëÅè©M¹ê¥Î§Þ¥©¡F
?³n¥ó½Õ¸Õªº§Þ³N­ì²z¡A¥H¤Î¥N½X¹B¦æ®Éªº¤º¦sªí²{¡F
?C++»yªkªº¹ê²{¾÷¨î©M¤Ï¶×½sªí²{§Î¦¡¡F

¥þ®Ñ¦@18³¹¡A¤À¬°¤T­Ó³¡¤À¡G
²Ä1³¡¤À ·Ç³Æ¤u§@ ¡]²Ä1³¹¡^
²³æ¦a¤¶²Ð¤F½sĶ¾¹¡B½Õ¸Õ¾¹©M¤Ï¶×½sÀRºA¤ÀªR¤u¨ãªº¨Ï¥Î¤èªk¥H¤Î¤Ï¶×½s¤ÞÀºªº¤u§@­ì²z¡F
²Ä¤G³¡¤ÀC++¤Ï¶×½s´¦¯µ¡]²Ä2¡ã13³¹¡^
¥H¦hºØ½sĶ¾¹¬°¨Ò¸ÑªR¤F¨C­ÓC/C++ª¾ÃÑÂIªº¶×½sªí²{§Î¦¡¡A³q¹L¾ã²z¤Ï¶×½s¥N½X®Þ²z¬yµ{©M¯ßµ¸¡AÁ¿¸Ñ¤F½Õ¸Õ©MÃѧO¦UºØC/C++»y¥yªº¤èªk¡A¦}¥B²`¤J­åªR¦Uª¾ÃÑÂIªº©³¼h¾÷¨î¡F
²Ä¤T³¡¤À °f¦V¤ÀªR§Þ³NÀ³¥Î¡]²Ä14¡ã18³¹¡^
³q¹L¹ïPEiD¡B½Õ¸Õ¾¹ OllyDbg¡B¤ì°¨¡B°Ç¯Á¯f¬rµ¥¹ê»ÚÀ³¥Îªº°f¦V¤ÀªR¡A±a»âŪªÌ»â¸ô°f¦V¤ÀªR§Þ³NªºÅ]¤O¡A¦}¥[²`¹ï©Ò¾Ç²z½×ª¾ÃѪº²z¸Ñ¡C
¥Ø¿ý¡G

§Ç¤@
§Ç¤G
§Ç¤T
«e¨¥
²Ä¤@³¡¤À ·Ç³Æ¤u§@
²Ä1³¹ ¼ô±x¤u§@Àô¹Ò©M¬ÛÃö¤u¨ã2
1.1 ¦w¸ËVisual Studio 20192
1.2 ¦w¸ËGCC6
1.3 ½Õ¸Õ¤u¨ãOllyDbg12
1.4 ½Õ¸Õ¤u¨ãx64dbg14
1.5 ½Õ¸Õ¤u¨ãWinDbg15
1.6 ¤Ï¶×½sÀRºA¤ÀªR¤u¨ãIDA17
1.7 ¤Ï¶×½s¤ÞÀºªº¤u§@­ì²z22
1.8 ¥»³¹¤pµ²27
²Ä¤G³¡¤À C++¤Ï¶×½s´¦¯µ
²Ä2³¹ °ò¥»¼Æ¾ÚÃþ«¬ªºªí²{§Î¦¡30
2.1 ¾ã¼ÆÃþ«¬30
2.1.1 µL²Å¸¹¾ã¼Æ30
2.1.2 ¦³²Å¸¹¾ã¼Æ31
2.2 ¯BÂI¼ÆÃþ«¬32
2.2.1 ¯BÂI¼Æªº½s½X¤è¦¡33
2.2.2 °ò¥»ªº¯BÂI¼Æ«ü¥O35
2.3 ¦r²Å©M¦r²Å¦ê43
2.3.1 ¦r²Åªº½s½X43
2.3.2 ¦r²Å¦êªº¦sÀx¤è¦¡44
2.4 ¥¬º¸Ãþ«¬45
2.5 ¦a§}¡B«ü°w©M¤Þ¥Î46
2.5.1 «ü°w©M¦a§}ªº°Ï§O46
2.5.2 ¦UÃþ«¬«ü°wªº¤u§@¤è¦¡47
2.5.3 ¤Þ¥Î56
2.6 ±`¶q60
2.6.1 ±`¶qªº©w¸q60
2.6.2 #define©Mconstªº°Ï§O62
2.7 ¥»³¹¤pµ²65
²Ä3³¹ »{ÃѱҰʨç¼Æ¡A§ä¨ì¥Î¤á¤J¤f66
3.1 µ{§Çªº¯u¥¿¤J¤f66
3.2 ¤F¸ÑVS2019ªº±Ò°Ê¨ç¼Æ66
3.3 main¨ç¼ÆªºÃѧO70
3.4 ¥»³¹¤pµ²71
²Ä4³¹ Æ[¹î¦UºØªí¹F¦¡ªº¨D­È¹Lµ{72
4.1 ºâ³N¹Bºâ©M½á­È72
4.1.1 ¦UºØºâ³N¹Bºâªº¤u§@§Î¦¡72
4.1.2 ºâ³Nµ²ªG·¸¥X130
4.1.3 ¦Û¼W©M¦Û´î131
4.2 Ãö¨t¹Bºâ©MÅÞ¿è¹Bºâ136
4.2.1 Ãö¨t¹Bºâ©M±ø¥ó¸õÂ઺¹ïÀ³136
4.2.2 ªí¹F¦¡µu¸ô137
4.2.3 ±ø¥óªí¹F¦¡141
4.3 ¦ì¹Bºâ149
4.4 ½sĶ¾¹¨Ï¥ÎªºÀu¤Æ§Þ¥©152
4.4.1 ¬y¤ô½uÀu¤Æ³W«h155
4.4.2 ¤À¤äÀu¤Æ³W«h158
4.4.3 °ª³t½w¦sÀu¤Æ³W«h159
4.5 ¤@¦¸ºâªk°f¦V¤§®È159
4.6 ¥»³¹¤pµ²164
²Ä5³¹ ¬yµ{±±¨î»y¥yªºÃѧO165
5.1 if»y¥y165
5.2 if¡Kelse¡K»y¥y168
5.3 ¥Îifºc¦¨ªº¦h¤À¤ä¬yµ{174
5.4 switchªº¯u¬Û180
5.5 Ãø¥Hºc¦¨¸õÂàªíªºswitch196
5.6 ­°§C§P©w¾ðªº°ª«×201
5.7 do¡Bwhile¡Bforªº¤ñ¸û206
5.8 ½sĶ¾¹¹ï´`Àôµ²ºcªºÀu¤Æ214
5.9 ¥»³¹¤pµ²220
²Ä6³¹ ¨ç¼Æªº¤u§@­ì²z221
6.1 ´Ì´Vªº§Î¦¨©MÃö³¬221
6.2 ¦UºØ½Õ¥Î¤è¦¡ªº¦Ò¹î222
6.3 ¨Ï¥Îebp©Îesp´M§}226
6.4 ¨ç¼Æªº°Ñ¼Æ230
6.5 ¨ç¼Æªºªð¦^­È232
6.6 x64½Õ¥Î¬ù©w235
6.7 ¥»³¹¤pµ²238
²Ä7³¹ Åܶq¦b¤º¦s¤¤ªº¦ì¸m©M³X°Ý¤è¦¡239
7.1 ¥þ§½Åܶq©M§½³¡Åܶqªº°Ï§O239
7.2 §½³¡ÀRºAÅܶqªº¤u§@¤è¦¡247
7.3 °ïÅܶq252
7.4 ¥»³¹¤pµ²256
²Ä8³¹ ¼Æ²Õ©M«ü°wªº´M§}257
8.1 ¼Æ²Õ¦b¨ç¼Æ¤º257
8.2 ¼Æ²Õ§@¬°°Ñ¼Æ266
8.3 ¼Æ²Õ§@¬°ªð¦^­È270
8.4 ¤U¼Ð´M§}©M«ü°w´M§}276
8.5 ¦hºû¼Æ²Õ282
8.6 ¦s©ñ«ü°wÃþ«¬¼Æ¾Úªº¼Æ²Õ288
8.7 «ü¦V¼Æ²Õªº«ü°wÅܶq290
8.8 ¨ç¼Æ«ü°w296
8.9 ¥»³¹¤pµ²299
²Ä9³¹ µ²ºcÅé©MÃþ300
9.1 ¹ï¶Hªº¤º¦s¥¬§½300
9.2 this«ü°w305
9.3 ÀRºA¼Æ¾Ú¦¨­û311
9.4 ¹ï¶H§@¬°¨ç¼Æ°Ñ¼Æ314
9.5 ¹ï¶H§@¬°ªð¦^­È322
9.6 ¥»³¹¤pµ²329
²Ä10³¹ ºc³y¨ç¼Æ©MªRºc¨ç¼Æ331
10.1 ºc³y¨ç¼Æªº¥X²{®É¾÷331
10.2 ¨C­Ó¹ï¶H¬O§_³£¦³Àq»{ªººc³y¨ç¼Æ353
10.3 ªRºc¨ç¼Æªº¥X²{®É¾÷355
10.4 ¥»³¹¤pµ²375
²Ä11³¹ µê¨ç¼Æ377
11.1 µê¨ç¼Æªº¾÷¨î377
11.2 µê¨ç¼ÆªºÃѧO383
11.3 ¥»³¹¤pµ²389
²Ä12³¹ ±q¤º¦s¨¤«×¬ÝÄ~©Ó©M¦h­«Ä~©Ó391
12.1 ÃѧOÃþ©MÃþ¤§¶¡ªºÃö¨t392
12.2 ¦h­«Ä~©Ó418
12.3 ©â¶HÃþ426
12.4 µêÄ~©Ó428
12.5 ¥»³¹¤pµ²443
²Ä13³¹ ²§±`³B²z445
13.1 ²§±`³B²zªº¬ÛÃöª¾ÃÑ445
13.2 ²§±`Ãþ«¬¬°°ò¥»¼Æ¾ÚÃþ«¬ªº³B²z¬yµ{451
13.3 ²§±`Ãþ«¬¬°¹ï¶Hªº³B²z¬yµ{459
13.4 ÃѧO²§±`³B²z464
13.5 x64²§±`³B²z475
13.5.1 RUNTIME_FUNCTIONµ²ºc476
13.5.2 UNWIND_INFOµ²ºc476
13.5.3 UNWIND_CODEµ²ºc478
13.5.4 ¯S©w¤_»y¨¥ªº³B²zµ{§Ç478
13.5.5 x64 FuncInfoªºÅܤÆ479
13.5.6 ÁÙ­ìx64ªºtry¡Kcatch481
13.6 ¥»³¹¤pµ²484
²Ä¤T³¡¤À °f¦V¤ÀªR§Þ³NÀ³¥Î
²Ä14³¹ PEiDªº¤u§@­ì²z¤ÀªR486
14.1 ¶}µoÀô¹ÒªºÃѧO486
14.2 ¶}µoÀô¹Òªº°°³y494
14.3 ¥»³¹¤pµ²497
²Ä15³¹ ½Õ¸Õ¾¹OllyDbgªº¤u§@­ì²z¤ÀªR498
15.1 INT3Â_ÂI498
15.2 ¤º¦sÂ_ÂI503
15.3 µw¥óÂ_ÂI507
15.4 ²§±`³B²z¾÷¨î513
15.5 ¥[¸ü½Õ¸Õµ{§Ç519
15.6 ¥»³¹¤pµ²522
²Ä16³¹ ¤j¦Ç¯T»·±±¤ì°¨°f¦V¤ÀªR523
16.1 ½Õ¸ÕÀô¹Ò°t¸m523
16.2 ¯f¬rµ{§Çªì¨B¤ÀªR524
16.3 ±Ò°Ê¹Lµ{¤ÀªR525
16.4 ³q«H¨óij¤ÀªR532
16.5 »·±±¥\¯à¤ÀªR536
16.6 ¥»³¹¤pµ²551
²Ä17³¹ WannaCry°Ç¯Á¯f¬r°f¦V¤ÀªR552
17.1 tasksche.exe°Ç¯Áµ{§Ç°f¦V¤ÀªR552
17.1.1 ¯f¬rªì©l¤Æ552
17.1.2 ¥[¸ü¯f¬r®Ö¤ß¥N½X558
17.1.3 ¯f¬r®Ö¤ß¥N½X562
17.2 mssecsvc.exeįÂε{§Ç°f¦V¤ÀªR569
17.2.1 įÂίf¬r¥N½Xªì©l¤Æ569
17.2.2 µo°eº|¬}§ðÀ»¥N½X573
17.3 ¥ÃùÚ¤§ÂÅMS17-010º|¬}­ì²z¤ÀªR577
17.3.1 º|¬}1§Q¥Î¤ÀªR577
17.3.2 º|¬}2§Q¥Î¤ÀªR583
17.3.3 º|¬}3§Q¥Î¤ÀªR584
17.4 ¥»³¹¤pµ²586
²Ä18³¹ ¤Ï¶×½s¥N½Xªº­««Ø»P½sĶ587
18.1 ­««Ø¤Ï¶×½s¥N½X587
18.2 ½sĶ­««Ø¦Zªº¤Ï¶×½s¥N½X590
18.3 ¥»³¹¤pµ²591
°Ñ¦Ò¤åÄm592
§Ç¡G