1 00:00:00,000 --> 00:00:05,640 2 00:00:05,640 --> 00:00:06,830 >> DOUG LLOYD: All GDB ceart. 3 00:00:06,830 --> 00:00:08,480 Cad é go díreach? 4 00:00:08,480 --> 00:00:11,310 Mar sin GDB, a sheasann don Debugger GNU, 5 00:00:11,310 --> 00:00:15,040 Is uirlis ndáiríre uamhnach gur féidir linn úsáid chun cabhrú linn dífhabhtaithe ár gcláir, 6 00:00:15,040 --> 00:00:18,210 nó i gcás ina bhfuil rudaí a fháil amach dul cearr inár gcláir. 7 00:00:18,210 --> 00:00:22,590 Is GDB amazingly cumhachtach, ach an t-aschur agus idirghníomhaíocht leis 8 00:00:22,590 --> 00:00:23,830 Is féidir a bheith le beagán cryptic. 9 00:00:23,830 --> 00:00:28,210 Tá sé de ghnáth uirlis-orduithe, agus Is féidir é a chaitheamh ar a lán de na teachtaireachtaí ag tú. 10 00:00:28,210 --> 00:00:31,144 Agus is féidir é de chineál ar deacair a pharsáil go díreach cad atá ar siúl. 11 00:00:31,144 --> 00:00:33,560 Céimeanna Fortunately, tá muid tógtha a shocrú an fhadhb ar do shon 12 00:00:33,560 --> 00:00:36,281 mar atá tú ag obair trí CS50. 13 00:00:36,281 --> 00:00:39,030 Mura bhfuil tú ag baint úsáide as an grafach dífhabhtóir, a mo chomhghleacaí Dan 14 00:00:39,030 --> 00:00:41,570 Armandarse labhair go leor le beagán faoi i físeán go 15 00:00:41,570 --> 00:00:44,740 Ba chóir go mbeadh níos mó ná anseo ceart anois, d'fhéadfadh gá duit 16 00:00:44,740 --> 00:00:48,270 chun úsáid na n-orduithe uirlisí a bheith ag obair le GDB. 17 00:00:48,270 --> 00:00:51,250 Má tá tú ag obair sa CS50 IDE, ní gá duit é seo a dhéanamh. 18 00:00:51,250 --> 00:00:53,550 Ach mura bhfuil tú ag obair sa IDE CS50, 19 00:00:53,550 --> 00:00:55,750 b'fhéidir ag baint úsáide as leagan de Fearas CS50, 20 00:00:55,750 --> 00:00:58,860 nó Linux eile oibriúcháin córas le GDB suiteáilte ar sé, 21 00:00:58,860 --> 00:01:00,980 b'fhéidir go mbeadh ort a úsáid na huirlisí orduithe. 22 00:01:00,980 --> 00:01:02,860 >> Agus ós rud é a d'fhéadfadh tú ní mór é sin a dhéanamh, tá sé 23 00:01:02,860 --> 00:01:06,280 úsáideach ach chun tuiscint a fháil ar conas Oibríonn GDB na n-orduithe. 24 00:01:06,280 --> 00:01:09,650 Ach arís, má tá tú ag baint úsáide as an IDE CS50, tú 25 00:01:09,650 --> 00:01:15,400 Is féidir a bhaint as an dífhabhtóir grafach go bhfuil tógtha isteach an IDE. 26 00:01:15,400 --> 00:01:18,750 Mar sin, a fháil rudaí ag dul leis GDB, chun tús a chur leis debugging 27 00:01:18,750 --> 00:01:21,220 próiseas ar leith clár, ní mór go léir a dhéanamh 28 00:01:21,220 --> 00:01:23,810 Tá cineál GDB dhiaidh ag an ainm an chláir. 29 00:01:23,810 --> 00:01:28,620 Mar sin, mar shampla, má tá do chlár Dia duit, ba mhaith leat cineál GDB Dia duit. 30 00:01:28,620 --> 00:01:31,210 >> Nuair a dhéanann tú sin, tá tú ag dul a tharraingt suas ar an gcomhshaol GDB. 31 00:01:31,210 --> 00:01:33,800 Dearbhófar do pras a athrú, agus in ionad iad a cad é de ghnáth 32 00:01:33,800 --> 00:01:35,841 Is rudaí nuair a scríobhann tú ag na LS line-- ordú, 33 00:01:35,841 --> 00:01:38,115 cd-- gach ceann de do tipiciúil Linux orduithe, do pras 34 00:01:38,115 --> 00:01:42,200 Beidh athrú go, is dócha, rud éigin cosúil le lúibíní lúibíní GDB. 35 00:01:42,200 --> 00:01:46,630 Sin do GDB pras nua, mar gheall ar tá tú taobh istigh an gcomhshaol GDB. 36 00:01:46,630 --> 00:01:49,830 Chomh luath agus taobh istigh den timpeallacht sin, níl dhá orduithe móra 37 00:01:49,830 --> 00:01:52,290 go mbainfidh tú úsáid is dócha san ord seo a leanas. 38 00:01:52,290 --> 00:01:55,200 >> Is é an chéad b, a Is gearr do sos. 39 00:01:55,200 --> 00:01:58,690 Agus tar éis a scríobhann tú b, tú de ghnáth cineál an t-ainm feidhme, 40 00:01:58,690 --> 00:02:01,040 nó má tharlaíonn tú a fhios timpeall cén uimhirlíne 41 00:02:01,040 --> 00:02:04,100 Is é do chlár ag tosú iad féin a iompar ar beag aisteach, 42 00:02:04,100 --> 00:02:06,370 is féidir leat cineál líne Uimhir ann chomh maith. 43 00:02:06,370 --> 00:02:09,660 Cad b, nó sos, a dhéanann is ceadaíonn sé do chlár 44 00:02:09,660 --> 00:02:13,270 a rith suas go dtí pointe áirithe, eadhon, an t-ainm na feidhme 45 00:02:13,270 --> 00:02:15,880 go bhfuil tú a shonrú nó an líne Uimhir a bhfuil tú a shonrú. 46 00:02:15,880 --> 00:02:18,590 >> Agus ag an bpointe sin, sé Beidh reo fhorghníomhú. 47 00:02:18,590 --> 00:02:21,670 Is é seo an rud gur maith, mar gheall ar a luaithe a fhorghníomhú curtha reoite, 48 00:02:21,670 --> 00:02:25,214 Is féidir leat tús a chur go han-mhall céim trí do chlár. 49 00:02:25,214 --> 00:02:28,130 De ghnáth, má atá tú ag rith do chláir, tá siad go leor gearr. 50 00:02:28,130 --> 00:02:31,250 De ghnáth, scríobhann tú ponc Slais cuma cad an t-ainm do chlár é, bhuail Iontráil, 51 00:02:31,250 --> 00:02:33,470 agus sula féidir leat blink, do Tá an clár críochnaithe cheana féin. 52 00:02:33,470 --> 00:02:36,620 Níl sé i ndáiríre a lán ama chun iarracht a agus figiúr amach cad atá ar siúl mícheart. 53 00:02:36,620 --> 00:02:40,920 Mar sin tá sé i ndáiríre a bheith in ann rudaí mall síos ag leagan pointe sos le b, 54 00:02:40,920 --> 00:02:43,040 agus ansin ghéarú i. 55 00:02:43,040 --> 00:02:46,169 >> Ansin, nuair atá tú a leagtar do bhriseadh pointe, is féidir leat a reáchtáil ar an gclár. 56 00:02:46,169 --> 00:02:47,960 Agus má tá aon argóintí orduithe, 57 00:02:47,960 --> 00:02:51,610 tú a shonrú orthu anseo, ní nuair focail a GDB d'ainm an chláir. 58 00:02:51,610 --> 00:02:55,980 Tú a shonrú go léir na n-orduithe argóintí ag cur r, nó a reáchtáil, 59 00:02:55,980 --> 00:03:00,270 agus ansin argóintí líne is cuma cén orduithe is gá duit taobh istigh de do chlár. 60 00:03:00,270 --> 00:03:03,510 Tá roinnt de eile i ndáiríre orduithe tábhachtach agus úsáideach 61 00:03:03,510 --> 00:03:04,970 taobh istigh den timpeallacht OTI. 62 00:03:04,970 --> 00:03:07,540 Mar sin, lig dom ach go tapa dul thar cuid acu. 63 00:03:07,540 --> 00:03:11,320 >> Is é an chéad n, atá gearr do chugainn, agus is féidir leat cineál romhainn in ionad n, 64 00:03:11,320 --> 00:03:12,304 Bheadh ​​an dá obair. 65 00:03:12,304 --> 00:03:13,470 Agus tá sé ach an luathscríbhinn. 66 00:03:13,470 --> 00:03:17,540 Agus mar atá tú is dócha gotten cheana a úsáidtear chun, a bheith in ann rudaí a chlóscríobh 67 00:03:17,540 --> 00:03:20,520 Is giorra go ginearálta níos fearr. 68 00:03:20,520 --> 00:03:24,100 Agus cad a bheidh sé a dhéanamh go bhfuil sé go mbainfidh céim ar aghaidh aon bloc de chód. 69 00:03:24,100 --> 00:03:26,170 Mar sin, beidh sé dul ar aghaidh go dtí go glao feidhm. 70 00:03:26,170 --> 00:03:28,350 Agus ansin in ionad tumadóireacht isteach an bhfeidhm 71 00:03:28,350 --> 00:03:33,130 agus ag dul trí gach ceann de na feidhmeanna sin cód, beidh sé ag an fheidhm díreach. 72 00:03:33,130 --> 00:03:34,400 >> Beidh an fheidhm a dtugtar. 73 00:03:34,400 --> 00:03:35,733 Beidh sé a dhéanamh is cuma cad é a chuid oibre. 74 00:03:35,733 --> 00:03:38,870 Beidh sé a luach a thabhairt ar ais an fheidhm a dtugtar sé. 75 00:03:38,870 --> 00:03:42,490 Agus ansin beidh tú ag bogadh ar aghaidh go dtí an chéad líne eile na feidhme sin ag glaoch. 76 00:03:42,490 --> 00:03:44,555 Más mian leat chun dlús a taobh istigh na feidhme, 77 00:03:44,555 --> 00:03:46,430 seachas díreach tar éis sí i gcrích, go háirithe 78 00:03:46,430 --> 00:03:50,004 má cheapann tú go bhfuil an fhadhb D'fhéadfadh bréag taobh istigh na feidhme sin, 79 00:03:50,004 --> 00:03:52,670 d'fhéadfaí tú, ar ndóigh, a leagtar sos pointe taobh istigh na feidhme sin. 80 00:03:52,670 --> 00:03:57,820 Nó má tá tú ag rith cheana féin, is féidir leat s a úsáid chun céim ar aghaidh líne amháin de chód. 81 00:03:57,820 --> 00:04:01,170 >> Mar sin, beidh sé seo céim i agus Léim i bhfeidhmeanna, 82 00:04:01,170 --> 00:04:04,750 seachas go bhfuil ach an fhorghníomhú agus ag leanúint ar an bhfeidhm i 83 00:04:04,750 --> 00:04:07,380 go bhfuil tú i do debugging. 84 00:04:07,380 --> 00:04:09,870 Más mian leat riamh a fhios an luach athróg, 85 00:04:09,870 --> 00:04:12,507 is féidir leat cineál p, nó Print, agus ansin an t-ainm athraitheach. 86 00:04:12,507 --> 00:04:15,090 Agus beidh a phriontáil amach a thabhairt duit, taobh istigh den timpeallacht GDB, 87 00:04:15,090 --> 00:04:19,110 an t-ainm ar an athróg, go you-- leithscéal me-- an luach na hathróige 88 00:04:19,110 --> 00:04:20,064 go atá tú ainmnithe. 89 00:04:20,064 --> 00:04:23,230 Más mian leat a fhios ag na luachanna de gach athróg inrochtana áitiúil ó áit 90 00:04:23,230 --> 00:04:25,970 Tá tú faoi láthair i do clár, is féidir leat cineál muintir na háite info. 91 00:04:25,970 --> 00:04:28,332 Tá sé a lán níos tapúla ná clóscríobh p agus ansin is cuma cad, 92 00:04:28,332 --> 00:04:30,540 liostú amach gach ceann de na athróga a fhios agat ann. 93 00:04:30,540 --> 00:04:34,370 Is féidir leat cineál muintir na háite info, agus é a Beidh phriontáil amach gach rud ar do shon. 94 00:04:34,370 --> 00:04:37,770 Next suas BT, a bhfuil ghearr do ais Trace. 95 00:04:37,770 --> 00:04:41,680 Anois, go ginearálta, go háirithe go luath i CS50, 96 00:04:41,680 --> 00:04:44,450 ní bheidh ort ócáid ​​i ndáiríre BT, nó Ar ais Trace a úsáid, 97 00:04:44,450 --> 00:04:47,860 toisc nach bhfuil tú ag a bhfuil feidhmeanna go glaoch feidhmeanna eile. 98 00:04:47,860 --> 00:04:50,450 >> D'fhéadfá a bheith príomh glaoch ar fheidhm, ach sin is dócha é. 99 00:04:50,450 --> 00:04:53,199 Ní gá duit go fheidhm eile ag glaoch feidhm eile, a 100 00:04:53,199 --> 00:04:54,880 glaonna feidhm eile, agus mar sin de. 101 00:04:54,880 --> 00:04:57,550 Ach de réir mar a fháil ar do chláir níos casta, agus go háirithe 102 00:04:57,550 --> 00:05:00,290 nuair a dtosaíonn tú ag obair le recursion, rian ar ais 103 00:05:00,290 --> 00:05:05,150 Is féidir a bheith ar bhealach i ndáiríre úsáideach chun ligean duit de chineál ar a fháil ar roinnt comhthéacs do áit 104 00:05:05,150 --> 00:05:06,460 Tá mé i mo chlár. 105 00:05:06,460 --> 00:05:10,590 Mar sin, deir tú atá scríofa do chód, agus tá a fhios agat go bhfuil gá, is mó feidhm 106 00:05:10,590 --> 00:05:14,720 f, a glaonna feidhm g, a glaonna ar h feidhm. 107 00:05:14,720 --> 00:05:17,650 Mar sin, ní mór dúinn roinnt sraitheanna de neadaithe ar siúl anseo. 108 00:05:17,650 --> 00:05:19,440 >> Má tá tú taobh istigh de do thimpeallacht GDB, 109 00:05:19,440 --> 00:05:21,640 agus tá a fhios agat do taobh istigh de h, ach tú dearmad 110 00:05:21,640 --> 00:05:27,210 faoi ​​na rudaí a fuair tú go dtí an áit leat are-- is féidir leat cineál BT, nó rian ar ais, 111 00:05:27,210 --> 00:05:32,370 agus beidh sé a phriontáil amach h, g, f mó, taobh le faisnéis éigin eile, a 112 00:05:32,370 --> 00:05:35,984 Tugann tú a clue go bhfuil, is mó OK ar a dtugtar f, f dtugtar g, g ar a dtugtar h, 113 00:05:35,984 --> 00:05:37,900 agus sin i gcás mé Táim faoi láthair i mo chlár. 114 00:05:37,900 --> 00:05:41,380 Ionas gur féidir é a bheith úsáideach i ndáiríre, go háirithe mar an cryptic-gnó de GDB 115 00:05:41,380 --> 00:05:45,667 thiocfaidh chun bheith ina beag mór, go fháil amach go díreach i gcás ina bhfuil rudaí. 116 00:05:45,667 --> 00:05:48,500 Ar deireadh, nuair a bhfuil do chlár a dhéanamh, nó nuair atá tú ag déanamh debugging é 117 00:05:48,500 --> 00:05:50,125 agus ba mhaith leat a céim amach as an timpeallacht GDB, 118 00:05:50,125 --> 00:05:51,940 cuidíonn sé a fhios conas a fháil amach inti. 119 00:05:51,940 --> 00:05:55,500 Is féidir leat cineál q, nó Scoir, a fháil amach. 120 00:05:55,500 --> 00:05:59,220 Anois, sula físeán an lae inniu D'ullmhaigh mé clár Buggy 121 00:05:59,220 --> 00:06:03,900 ar a dtugtar buggy1, a thiomsaigh mé ó chomhad a dtugtar buggy1.c. 122 00:06:03,900 --> 00:06:06,500 Mar a d'fhéadfadh a bheith ag súil, seo Tá an clár i ndáiríre Buggy. 123 00:06:06,500 --> 00:06:08,990 Théann rud éigin mícheart nuair mé iarracht a dhéanamh agus rith sé. 124 00:06:08,990 --> 00:06:13,014 Anois, ar an drochuair, tá mé neamhaireach scriostar mo chomhad buggy1.c, 125 00:06:13,014 --> 00:06:15,930 mar sin d'fhonn dom a figiúr amach cad atá ar siúl cearr leis an gclár seo, 126 00:06:15,930 --> 00:06:18,770 Tá mé ag dul a bheith acu a úsáid GDB chineál ar blindly, ag iarraidh 127 00:06:18,770 --> 00:06:22,372 nascleanúint a dhéanamh tríd an gclár seo figiúr amach go díreach cad atá ar siúl mícheart. 128 00:06:22,372 --> 00:06:24,580 Ach ag baint úsáide as ach na huirlisí againn foghlamtha cheana féin faoi, 129 00:06:24,580 --> 00:06:27,700 is féidir linn an figiúr go leor i bhfad amach go díreach a bhfuil sé. 130 00:06:27,700 --> 00:06:30,740 Mar sin, a ligean ar ceann ar aghaidh go dtí Tá CS50 IDE agus le breathnú. 131 00:06:30,740 --> 00:06:33,155 OK, mar sin go bhfuil muid anseo i mo CS50 IDE timpeallacht, 132 00:06:33,155 --> 00:06:35,697 agus beidh mé súmáil isteach le beagán ionas gur féidir leat a fheiceáil beagán níos mó. 133 00:06:35,697 --> 00:06:38,530 I mo fhuinneog críochfort, más rud é liosta mé an t-ábhar de mo stiúrthóir reatha 134 00:06:38,530 --> 00:06:41,250 le LS, beidh orainn a fheiceáil go bhfuil mé tá cúpla de chomhaid foinse 135 00:06:41,250 --> 00:06:44,982 anseo, lena n-áirítear an pléadh roimhe buggy1. 136 00:06:44,982 --> 00:06:46,940 Cad é go díreach a théann ar nuair Déanaim iarracht agus a reáchtáil buggy1. 137 00:06:46,940 --> 00:06:47,773 Bhuel a ligean ar a fháil amach. 138 00:06:47,773 --> 00:06:52,510 Cineál mé ponc Slais, Buggy, agus mé bhuail Iontráil. 139 00:06:52,510 --> 00:06:53,670 >> Lochtanna deighilt. 140 00:06:53,670 --> 00:06:55,000 Ní Sin maith. 141 00:06:55,000 --> 00:06:57,180 Má tá tú chun cuimhne, ar locht deighilt de ghnáth 142 00:06:57,180 --> 00:07:01,540 Tarlaíonn nuair a muid rochtain cuimhne nach bhfuil muid ag cead chun teagmháil. 143 00:07:01,540 --> 00:07:03,820 Táimid tar éis bainte amach ar bhealach taobh amuigh de na bounds 144 00:07:03,820 --> 00:07:05,995 de cad é an chláir, an tiomsaitheoir, a thabhairt dúinn. 145 00:07:05,995 --> 00:07:08,310 Agus mar sin cheana go bhfuil clue a choinneáil sa bosca uirlisí 146 00:07:08,310 --> 00:07:10,660 mar muid ag cur tús leis an bpróiseas debugging. 147 00:07:10,660 --> 00:07:13,620 Tá Rud imithe mícheart beag anseo. 148 00:07:13,620 --> 00:07:15,935 >> Gach ceart, mar sin a ligean tús suas an timpeallacht GDB 149 00:07:15,935 --> 00:07:19,030 agus féach an féidir linn a dhéanamh amach cad é go díreach é an fhadhb. 150 00:07:19,030 --> 00:07:21,674 Tá mé ag dul go soiléir mo scáileán, agus tá mé ag dul chun cineál GDB 151 00:07:21,674 --> 00:07:24,340 arís, chun dul isteach ar an gcomhshaol GDB, agus ainm an chláir 152 00:07:24,340 --> 00:07:27,450 gur mhaith liom a dífhabhtaithe, buggy1. 153 00:07:27,450 --> 00:07:30,182 Faighimid teachtaireacht beag, léamh siombailí ó buggy1, a rinneadh. 154 00:07:30,182 --> 00:07:32,390 Gach go chiallaíonn go bhfuil tharraing sé le chéile gach ceann de na cód, 155 00:07:32,390 --> 00:07:35,570 agus anois tá sé curtha luchtú isteach GDB, agus tá sé réidh le dul. 156 00:07:35,570 --> 00:07:37,140 >> Anois, cad mé ag iarraidh a dhéanamh? 157 00:07:37,140 --> 00:07:39,130 An bhfuil tú a thabhairt chun cuimhne cad é an Is é an chéad chéim de ghnáth 158 00:07:39,130 --> 00:07:42,540 tar éis Tá mé taobh istigh den timpeallacht seo? 159 00:07:42,540 --> 00:07:44,540 Súil go dtosnódh, dúirt tú a leagtar pointe sos, mar gheall ar 160 00:07:44,540 --> 00:07:46,240 i bhfíric go bhfuil cad ba mhaith liom a dhéanamh. 161 00:07:46,240 --> 00:07:47,990 Anois, ní dóigh liom go bhfuil an cód foinse do seo 162 00:07:47,990 --> 00:07:50,948 i os comhair dom, is dócha nach bhfuil an cás a úsáid tipiciúil, dála an scéil. 163 00:07:50,948 --> 00:07:52,055 Beidh tú is dócha. 164 00:07:52,055 --> 00:07:52,680 Mar sin, go maith. 165 00:07:52,680 --> 00:07:55,790 Ach ag glacadh leis nach bhfuil tú, cad atá an fheidhm amháin go bhfuil a fhios agat 166 00:07:55,790 --> 00:07:58,880 ann i ngach clár C amháin? 167 00:07:58,880 --> 00:08:04,420 Níl cuma cé chomh mór nó cé chomh casta bhfuil sé, ann an fheidhm seo cinnte. 168 00:08:04,420 --> 00:08:05,440 Is mó, ceart? 169 00:08:05,440 --> 00:08:08,870 >> Mar sin, ina éagmais gach rud eile, is féidir linn a a shocrú le pointe sos ag mó. 170 00:08:08,870 --> 00:08:12,200 Agus arís, raibh mé in ann ach cineál sos is mó, in ionad b. 171 00:08:12,200 --> 00:08:14,650 Agus má tá tú aisteach, má tá tú riamh chlóscríobh amach a dtoil fada 172 00:08:14,650 --> 00:08:16,800 agus ansin a thuiscint go bhfuil tú chlóscríobh ar an rud mícheart, 173 00:08:16,800 --> 00:08:18,770 agus ba mhaith leat chun fáil réidh de gach mar a rinne mé díreach tar éis, 174 00:08:18,770 --> 00:08:22,029 is féidir leat Rialú U, a bheidh scriosadh gach rud agus thabhairt duit ar ais 175 00:08:22,029 --> 00:08:23,570 go dtí tús na línte cúrsóir. 176 00:08:23,570 --> 00:08:26,569 A lán níos tapúla ná mar a shealbhú síos ach an scriosadh, nó ag bualadh sé a bunch amanna 177 00:08:26,569 --> 00:08:27,080 os a chionn. 178 00:08:27,080 --> 00:08:28,740 >> Mar sin, beidh orainn a shocrú le pointe sos ag mó. 179 00:08:28,740 --> 00:08:32,970 Agus mar is féidir leat a fheiceáil, a deir sé tá muid a shocrú le pointe sos ag buggy1.c comhad, 180 00:08:32,970 --> 00:08:36,330 agus is cosúil an chéad líne de chód príomh líne seacht. 181 00:08:36,330 --> 00:08:38,080 Arís, nach bhfuil againn an comhad foinse anseo, 182 00:08:38,080 --> 00:08:40,429 ach beidh mé glacadh leis go bhfuil sé ag insint dom an fhírinne. 183 00:08:40,429 --> 00:08:44,510 Agus ansin, tá mé ag iarraidh ach agus a reáchtáil ar an gclár, r. 184 00:08:44,510 --> 00:08:45,360 Clár ag tosú. 185 00:08:45,360 --> 00:08:48,160 Ceart go leor, mar sin an teachtaireacht seo Is beag cryptic. 186 00:08:48,160 --> 00:08:50,160 Ach go bunúsach cad atá Is ag tarlú anseo tá sé ach 187 00:08:50,160 --> 00:08:53,350 ag insint dom Tá mé bhuail mo sos pointe, sos pointe uimhir 1. 188 00:08:53,350 --> 00:08:55,877 >> Agus ansin, an líne de chód, aon comhad nó eolaire sin. 189 00:08:55,877 --> 00:08:57,710 An chúis amháin go Tá mé ag féachaint go teachtaireacht 190 00:08:57,710 --> 00:09:00,800 Is mar gheall mé neamhaireach scriostar mo chomhad buggy.c. 191 00:09:00,800 --> 00:09:04,050 Má bhí ann mo chomhad buggy1.c sa chomhadlann reatha, 192 00:09:04,050 --> 00:09:06,920 an ceart sin ag teacht ann a bheadh ​​i ndáiríre inis dom cad é an líne de chód 193 00:09:06,920 --> 00:09:08,214 literally léann. 194 00:09:08,214 --> 00:09:09,380 Ar an drochuair, scrios mé é. 195 00:09:09,380 --> 00:09:14,790 Táimid ag dul a bheith acu chun cineál nascleanúint tríd an beagán níos mó blindly. 196 00:09:14,790 --> 00:09:17,330 >> OK, mar sin a ligean ar a fheiceáil, cad a mé ag iarraidh a dhéanamh anseo? 197 00:09:17,330 --> 00:09:21,770 Bhuel, ba mhaith liom a fháil amach cad áitiúla Tá athróg b'fhéidir ar fáil dom. 198 00:09:21,770 --> 00:09:23,570 Tá mé tosaithe mo chlár. 199 00:09:23,570 --> 00:09:28,515 A ligean ar a fheiceáil cad a d'fhéadfadh a bheith initialized cheana féin le haghaidh dúinn. 200 00:09:28,515 --> 00:09:31,430 Cineál mé muintir na háite Info, gan aon muintir na háite. 201 00:09:31,430 --> 00:09:33,960 Ceart go leor, mar sin nach ndéanann a thabhairt dom a ton eolais. 202 00:09:33,960 --> 00:09:37,600 Raibh mé in ann iarracht a dhéanamh agus a phriontáil amach athróg, ach níl a fhios agam aon ainmneacha athraitheach. 203 00:09:37,600 --> 00:09:39,930 Raibh mé in ann triail a rian ar ais, ach tá mé taobh istigh de phríomh, 204 00:09:39,930 --> 00:09:43,710 mar sin tá a fhios agam nach bhfuil déanta agam glaoch fheidhm eile ceart anois. 205 00:09:43,710 --> 00:09:47,710 >> Mar sin Breathnaíonn an nós iad na roghanna ach amháin a úsáid n nó mar sin agus tús chun tumadóireacht a dheanamh i. 206 00:09:47,710 --> 00:09:49,630 Tá mé ag dul n a úsáid. 207 00:09:49,630 --> 00:09:51,180 Mar sin, cineál mé n. 208 00:09:51,180 --> 00:09:53,060 OH mo gosh, cad siúl anseo. 209 00:09:53,060 --> 00:09:56,260 Clár a fuarthas comharthaí, SIGSEGV locht deighilt, 210 00:09:56,260 --> 00:09:57,880 agus ansin a bunch iomlán de stuif. 211 00:09:57,880 --> 00:09:58,880 Tá mé overwhelmed cheana. 212 00:09:58,880 --> 00:10:00,980 Bhuel, níl i ndáiríre go leor le foghlaim anseo. 213 00:10:00,980 --> 00:10:02,520 Mar sin, cad a chiallaíonn sé sin dúinn? 214 00:10:02,520 --> 00:10:09,180 Cad a insíonn sé dúinn go bhfuil, tá an clár ar tí, ach nach bhfuil fós, locht seg. 215 00:10:09,180 --> 00:10:12,550 Agus go háirithe, tá mé ag dul chun súmáil isteach níos faide anseo, 216 00:10:12,550 --> 00:10:18,980 tá sé faoi locht a GSE faoi rud ar a dtugtar strcmp. 217 00:10:18,980 --> 00:10:22,705 >> Anois, ní féidir linn a bheith pléite fheidhm sin go forleathan. 218 00:10:22,705 --> 00:10:25,580 Ach is-- sé toisc nach bhfuil muid ag dul chun labhairt faoi gach feidhm a 219 00:10:25,580 --> 00:10:28,610 ann sa chaighdeán C library-- ach tá siad ar fáil gach duit, 220 00:10:28,610 --> 00:10:32,110 go háirithe má ghlacann tú le féachaint ar reference.cs50.net. 221 00:10:32,110 --> 00:10:35,000 Agus is é strcmp ndáiríre cumhachtach fheidhm atá ann taobh istigh 222 00:10:35,000 --> 00:10:38,070 an header string.h comhad, a bhfuil header 223 00:10:38,070 --> 00:10:41,970 comhad go tiomanta chun feidhmeanna an obair sin le agus teaghráin ionramháil. 224 00:10:41,970 --> 00:10:49,830 >> Agus go háirithe, cad a dhéanann strcmp é i gcomparáid é na luachanna de dhá teaghráin. 225 00:10:49,830 --> 00:10:54,160 Mar sin, tá mé ar tí locht a deighleoige ar glao a strcmp is cosúil. 226 00:10:54,160 --> 00:10:58,530 Bhuail mé n, agus go deimhin a rachaidh mé an teachtaireacht, clár fhoirceannadh le SIGSEGV comhartha 227 00:10:58,530 --> 00:11:01,370 locht deighilt. Mar sin, anois Tá mé faulted seg ndáiríre, 228 00:11:01,370 --> 00:11:06,479 agus tá mo chlár deas i bhfad a thabhairt suas go héifeachtach. 229 00:11:06,479 --> 00:11:07,770 Is é seo an deireadh an chláir. 230 00:11:07,770 --> 00:11:10,370 Bhris sé síos, crashed sé. 231 00:11:10,370 --> 00:11:14,740 Mar sin, ní raibh go leor, ach tá mé iarbhír a rinne a fhoghlaim go leor le beagán 232 00:11:14,740 --> 00:11:16,747 as an taithí beag. 233 00:11:16,747 --> 00:11:17,580 Cad é atá foghlamtha agam? 234 00:11:17,580 --> 00:11:22,020 Bhuel, de dheasca mo chlár go leor i bhfad láithreach. 235 00:11:22,020 --> 00:11:26,300 De dheasca mo chlár ar a ghlaoch chun strcmp, ach tá mé 236 00:11:26,300 --> 00:11:30,560 nach bhfuil aon athróg áitiúla i mo clár ag an am a tuairteanna sé. 237 00:11:30,560 --> 00:11:37,320 Mar sin, cad teaghrán, nó teaghráin, Raibh mé in ann a bheith, b'fhéidir, i gcomparáid. 238 00:11:37,320 --> 00:11:42,140 Más rud é nach féidir liom aon áitiúla athróg, d'fhéadfadh tú 239 00:11:42,140 --> 00:11:45,520 surmise go have-- mé ann b'fhéidir go bhfuil domhanda athraitheach, a d'fhéadfadh a bheith fíor. 240 00:11:45,520 --> 00:11:47,670 >> Ach go ginearálta, is cosúil cosúil Tá mé ag i gcomparáid 241 00:11:47,670 --> 00:11:52,070 chun rud éigin nach bhfuil ann. 242 00:11:52,070 --> 00:11:54,130 Mar sin, a ligean ar a imscrúdú go beag breise. 243 00:11:54,130 --> 00:11:55,120 Mar sin, tá mé ag dul go soiléir mo scáileán. 244 00:11:55,120 --> 00:11:57,536 Tá mé ag dul a scor as an GDB timpeallacht le haghaidh an dara. 245 00:11:57,536 --> 00:12:01,300 Agus tá mé ag smaoineamh, ceart go leor, mar sin níl aon athróg áitiúil i mo chlár. 246 00:12:01,300 --> 00:12:06,444 N'fheadar má b'fhéidir tá mé ceaptha a pas a fháil i teaghrán mar argóint-orduithe. 247 00:12:06,444 --> 00:12:07,610 Mar sin, a ligean ar thástáil ach seo amach. 248 00:12:07,610 --> 00:12:09,020 Nach bhfuil mé déanta roimh seo. 249 00:12:09,020 --> 00:12:14,244 >> A ligean ar a fheiceáil má b'fhéidir má ritheann mé an clár seo le argóint an líne ordaithe a oibríonn sé. 250 00:12:14,244 --> 00:12:16,140 Huh, gan aon locht deighilt ann. 251 00:12:16,140 --> 00:12:17,870 Dúirt sé ach dom go figured mé amach é. 252 00:12:17,870 --> 00:12:19,170 Agus mar sin b'fhéidir go bhfuil an shocrú anseo. 253 00:12:19,170 --> 00:12:27,560 Agus go deimhin, má théann mé ar ais agus féachaint ar an cód foinse iarbhír buggy1.c, 254 00:12:27,560 --> 00:12:31,180 dealraíonn sé mar cé go cad mé ag déanamh go bhfuil Tá mé ag déanamh glao a strcmp gan 255 00:12:31,180 --> 00:12:34,010 seiceáil a dhéanamh cibé i ndáiríre argv [1] ann. 256 00:12:34,010 --> 00:12:36,730 Tá sé seo i ndáiríre an cód foinse do buggy1.c. 257 00:12:36,730 --> 00:12:38,855 Mar sin, cad is gá dom i ndáiríre a dhéanamh anseo mo chlár a shocrú, 258 00:12:38,855 --> 00:12:40,835 glacadh leis go bhfuil mé an comhad i os comhair dom, 259 00:12:40,835 --> 00:12:44,740 a chur ach seiceáil a dhéanamh cinnte go bhfuil argc cothrom le 2. 260 00:12:44,740 --> 00:12:47,780 Mar sin, sampla seo, arís, mar a dúirt mé, Is le beagán suarach, ceart? 261 00:12:47,780 --> 00:12:49,840 Nach bhfuil tú ag dul go ginearálta le thaisme scriosadh do cód foinse 262 00:12:49,840 --> 00:12:51,820 agus ansin chun iarracht a dhéanamh agus dífhabhtaigh an chláir. 263 00:12:51,820 --> 00:12:53,120 Ach tá súil againn, thug sé tú léiriú 264 00:12:53,120 --> 00:12:55,120 de na cineálacha rudaí a d'fhéadfá a bheith ag smaoineamh ar 265 00:12:55,120 --> 00:12:56,610 mar a bhfuil tú ag debugging do chlár. 266 00:12:56,610 --> 00:12:58,760 >> Cad é an staid chúrsaí anseo? 267 00:12:58,760 --> 00:13:00,510 Cad iad na hathróga a dhéanfaidh mé ní mór inrochtana dom? 268 00:13:00,510 --> 00:13:03,600 Cá bhfuil mo chlár go díreach crashing, ar an méid a líne, 269 00:13:03,600 --> 00:13:05,240 ar an méid a ghlaoch le cad fheidhm? 270 00:13:05,240 --> 00:13:06,952 Cén cineál leideanna bhfuil a thabhairt dom? 271 00:13:06,952 --> 00:13:08,910 Agus sin go díreach ar an de chineál ar mindset go bhfuil tú 272 00:13:08,910 --> 00:13:12,820 Ba chóir a bheith ag fáil isteach nuair a bhíonn tú ag smaoineamh faoi debugging do chláir. 273 00:13:12,820 --> 00:13:13,820 >> Tá mé Doug Lloyd. 274 00:13:13,820 --> 00:13:16,140 Is é seo an CS50. 275 00:13:16,140 --> 00:15:08,642