1
00:00:00,000 --> 00:00:03,250
>> GŁOŚNIK 1: Załóżmy teraz napisać program
oni naprawdę porównuje dwa ciągi

2
00:00:03,250 --> 00:00:04,245
znaków dla znaku.

3
00:00:04,245 --> 00:00:06,830
Użyjmy Porównaj 0 jako
nasz punkt wyjścia.

4
00:00:06,830 --> 00:00:11,550
Ale niech najpierw odwinąć warstwy, które
jest typu ciąg i przepisać

5
00:00:11,550 --> 00:00:14,120
za to, co naprawdę jest, co
jest gwiazdą char.

6
00:00:14,120 --> 00:00:17,740
To jest adres znaku,
specjalnie pierwszy znak

7
00:00:17,740 --> 00:00:21,010
sekwencja znaków, które by bardziej
powszechnie znany jako ciąg.

8
00:00:21,010 --> 00:00:21,880
>> Same dla t.

9
00:00:21,880 --> 00:00:25,660
Miejmy przepisać ciąg tego oświadczenia
jak gwiazdy char.

10
00:00:25,660 --> 00:00:28,690
A teraz musimy się już nie
porównanie s przed t, bo

11
00:00:28,690 --> 00:00:30,150
Porównując dwa adresy.

12
00:00:30,150 --> 00:00:33,180
Chcemy naprawdę porównać
same dwa ciągi.

13
00:00:33,180 --> 00:00:37,520
Aby to zrobić, można użyć funkcji
zadeklarowane w <string.h>.

14
00:00:37,520 --> 00:00:40,920
Więc dodam, że obejmują
na moim pliku.

15
00:00:40,920 --> 00:00:43,130
>> A potem idę do zmian
ta linia tutaj.

16
00:00:43,130 --> 00:00:47,920
Zamiast porównać s przed t, jestem
zamiar wywołać funkcję zamieszać comp,

17
00:00:47,920 --> 00:00:52,290
na ciąg porównać i przekazać
w jako argumenty S i T.

18
00:00:52,290 --> 00:00:56,480
Będziemy odroczyć następnie do łańcucha w porównaniu do
dowiedzieć się, czy s i t są rzeczywiście równe

19
00:00:56,480 --> 00:00:59,870
i niech dowiedzieć się, jak porównać
ich charakter do charakteru.

20
00:00:59,870 --> 00:01:02,410
>> Obecnie, zgodnie z dokumentacją
na ciąg porównać, to faktycznie

21
00:01:02,410 --> 00:01:06,920
powróci 0 jeśli dwa ciągi
wskazała o s i t mają takie same.

22
00:01:06,920 --> 00:01:09,490
To się zwróci liczbę ujemną
jeśli y powinny pochodzić przed t

23
00:01:09,490 --> 00:01:13,740
alfabetycznie lub liczba dodatnia czy
y powinny pochodzić po t alfabetycznie.

24
00:01:13,740 --> 00:01:16,090
>> Ale na razie, tylko dbamy
o równości.

25
00:01:16,090 --> 00:01:19,270
Więc mam zamiar po prostu sprawdzić, czy
Wartość zwracana ciąg porównania,

26
00:01:19,270 --> 00:01:21,450
przechodząc w s i t, jest równa 0.

27
00:01:21,450 --> 00:01:24,940
A jeśli tak, to będę twierdzić, że
te dwa łańcuchy są takie same.

28
00:01:24,940 --> 00:01:26,820
>> Ale mam zamiar zrobić jeden
jak również inne zmiany.

29
00:01:26,820 --> 00:01:30,410
Okazuje się, że ciąg GET, za ITS
dokumentacja, może czasem wrócić

30
00:01:30,410 --> 00:01:34,320
null, wartość wartownik, że zgodnie
uzyskać dokumentację struny, środki

31
00:01:34,320 --> 00:01:35,450
coś złego się stało.

32
00:01:35,450 --> 00:01:38,830
Na przykład, że zabrakło pamięci lub
użytkownik w jakiś sposób nie współpracował.

33
00:01:38,830 --> 00:01:41,080
>> Ciąg porównania, w międzyczasie,
jest trochę niestabilna.

34
00:01:41,080 --> 00:01:44,730
Jeśli przejdzie to null albo jego
pierwszy lub drugi argument, złe

35
00:01:44,730 --> 00:01:45,650
rzeczy mogą się zdarzyć.

36
00:01:45,650 --> 00:01:47,970
Złe rzeczy zwyczajowo w
wady segmentacji.

37
00:01:47,970 --> 00:01:52,210
Tak, aby uniknąć tego potencjału w ogóle,
Jestem pierwszy zamierza zawinąć to wykorzystanie

38
00:01:52,210 --> 00:01:56,350
Ciąg porównać przez ten cały wcięć
blok kodu, a tylko robi pierwszy

39
00:01:56,350 --> 00:02:03,140
że jeśli y nie jest równe NULL
i t nie jest równa null.

40
00:02:03,140 --> 00:02:08,280
>> Owijania, że ​​jeśli jeszcze skonstruować, że ja
wpisane wcześniej w nawiasy, jak

41
00:02:08,280 --> 00:02:12,270
dobrze, więc tym razem tylko dotknąć
s i t, czy jestem pewna, że

42
00:02:12,270 --> 00:02:13,450
nie są one puste.

43
00:02:13,450 --> 00:02:17,220
Załóżmy teraz zapisać, skompilować i
ponownie uruchomić ten program.

44
00:02:17,220 --> 00:02:22,240
>> Dokonaj porównania 1 dot slash porównaj 1.

45
00:02:22,240 --> 00:02:23,950
Powiem witam ponownie.

46
00:02:23,950 --> 00:02:25,890
Obserwowani przez witam jeszcze raz.

47
00:02:25,890 --> 00:02:28,110
I tym razem, rzeczywiście
wpisz to samo.

48
00:02:28,110 --> 00:02:30,255