1 00:00:00,000 --> 00:00:03,250 >> Spreker 1: Kom ons 'n program skryf nou hulle werklik twee snare vergelyk 2 00:00:03,250 --> 00:00:04,245 karakter vir karakter. 3 00:00:04,245 --> 00:00:06,830 Kom ons gebruik vergelyk 0 as ons uitgangspunt. 4 00:00:06,830 --> 00:00:11,550 Maar laat ons eers skil terug die laag is die string tipe en herskryf dit 5 00:00:11,550 --> 00:00:14,120 vir wat dit werklik is, wat is 'n kar ster. 6 00:00:14,120 --> 00:00:17,740 Dit is die adres van 'n karakter, spesifiek die eerste karakter in 'n 7 00:00:17,740 --> 00:00:21,010 volgorde van die karakters wat ons wil meer algemeen bekend as 'n string. 8 00:00:21,010 --> 00:00:21,880 >> Dieselfde geld vir t. 9 00:00:21,880 --> 00:00:25,660 Kom ons herskryf dat string verklaring as char ster. 10 00:00:25,660 --> 00:00:28,690 En nou het ons nodig om nie langer vergelyk s teen t, sodat 11 00:00:28,690 --> 00:00:30,150 ons vergelyk twee adresse. 12 00:00:30,150 --> 00:00:33,180 Ons wil werklik vergelyk die twee snare hulself. 13 00:00:33,180 --> 00:00:37,520 Om dit te doen, kan ons 'n funksie gebruik verklaar in string.h. 14 00:00:37,520 --> 00:00:40,920 So ek sal byvoeg dat sluit op die top van my lêer. 15 00:00:40,920 --> 00:00:43,130 >> En dan gaan ek verandering hierdie lyn hier. 16 00:00:43,130 --> 00:00:47,920 Eerder as om te vergelyk s teen t, ek is gaan 'n funksie opskudding comp te roep, 17 00:00:47,920 --> 00:00:52,290 vir string vergelyk, en slaag in as argumente s en t. 18 00:00:52,290 --> 00:00:56,480 Ons sal dan uitstel tot string vergelyk uit te vind of s en t is inderdaad gelyk 19 00:00:56,480 --> 00:00:59,870 en laat dit uit te vind hoe om te vergelyk hulle karakter vir karakter. 20 00:00:59,870 --> 00:01:02,410 >> Nou, volgens die dokumentasie vir string vergelyk, is dit eintlik 21 00:01:02,410 --> 00:01:06,920 gaan terug 0 indien die twee stringe wys op deur s en t is dieselfde. 22 00:01:06,920 --> 00:01:09,490 Dit gaan 'n negatiewe getal om terug te keer As s voor t moet kom 23 00:01:09,490 --> 00:01:13,740 alfabeties of 'n positiewe getal of s moet na t kom alfabeties. 24 00:01:13,740 --> 00:01:16,090 >> Maar vir nou, ons net omgee gelykheid. 25 00:01:16,090 --> 00:01:19,270 So ek gaan net toets of die terugkeer waarde van string vergelyk, 26 00:01:19,270 --> 00:01:21,450 verby in s en t, gelyk aan 0. 27 00:01:21,450 --> 00:01:24,940 En as dit so is, gaan ek om te beweer dat Die twee stringe is dieselfde. 28 00:01:24,940 --> 00:01:26,820 >> Maar ek gaan een te maak ander verandering so goed. 29 00:01:26,820 --> 00:01:30,410 Dit blyk dat get string, per sy dokumentasie, kan soms terug 30 00:01:30,410 --> 00:01:34,320 nul, 'n brandwag waarde wat, volgens snare dokumentasie, middel te kry 31 00:01:34,320 --> 00:01:35,450 iets sleg gebeur het. 32 00:01:35,450 --> 00:01:38,830 Byvoorbeeld, ons het uit die geheue of die gebruiker of ander manier het nie saam te werk. 33 00:01:38,830 --> 00:01:41,080 >> String vergelyk, intussen, is 'n bietjie broos. 34 00:01:41,080 --> 00:01:44,730 As jy slaag om dit nietig vir óf sy eerste of die tweede argument, slegte 35 00:01:44,730 --> 00:01:45,650 dinge kan gebeur. 36 00:01:45,650 --> 00:01:47,970 Slegte dinge wat gewoonlik segmentering foute. 37 00:01:47,970 --> 00:01:52,210 Sodat potensiële heeltemal te vermy, Ek gaan eers die gebruik van te draai 38 00:01:52,210 --> 00:01:56,350 string vergelyk deur insp hierdie hele blok van die kode en die eerste net doen 39 00:01:56,350 --> 00:02:03,140 dat indien s is nie gelyk aan nul en t is nie gelyk aan nul. 40 00:02:03,140 --> 00:02:08,280 >> Wikkel dat indien anders bou dat ek getik vroeër met krullerige draadjies as 41 00:02:08,280 --> 00:02:12,270 Wel, sodat hierdie tyd het ek raak net s en t as ek is seker dat 42 00:02:12,270 --> 00:02:13,450 hulle is nie null. 43 00:02:13,450 --> 00:02:17,220 Kom ons nou ook red, saamstel, en weer hierdie program. 44 00:02:17,220 --> 00:02:22,240 >> Maak vergelyk 1 dot streep vergelyk 1. 45 00:02:22,240 --> 00:02:23,950 Ek sal weer hallo sê. 46 00:02:23,950 --> 00:02:25,890 Gevolg deur hallo weer. 47 00:02:25,890 --> 00:02:28,110 En hierdie keer, het ek wel tik dieselfde ding. 48 00:02:28,110 --> 00:02:30,255