1
00:00:00,000 --> 00:00:03,250
>> ΟΜΙΛΗΤΗΣ 1: Ας γράψουμε τώρα ένα πρόγραμμα
να συγκρίνει πραγματικά δύο χορδές

2
00:00:03,250 --> 00:00:04,245
χαρακτήρα για τον χαρακτήρα.

3
00:00:04,245 --> 00:00:06,830
Ας χρησιμοποιήσουμε για σύγκριση 0 ως
αφετηρία μας.

4
00:00:06,830 --> 00:00:11,550
Αλλά ας το πρώτο του φλούδα πίσω το στρώμα που
είναι ο τύπος εγχόρδων και ξαναγράψει

5
00:00:11,550 --> 00:00:14,120
για το τι πραγματικά είναι, το οποίο
είναι ένα αστέρι char.

6
00:00:14,120 --> 00:00:17,740
Αυτή είναι η διεύθυνση ενός χαρακτήρα,
Συγκεκριμένα ο πρώτος χαρακτήρας σε μια

7
00:00:17,740 --> 00:00:21,010
ακολουθία χαρακτήρων που είχαμε περισσότερα
γενικά γνωστή ως ένα string.

8
00:00:21,010 --> 00:00:21,880
>> Ίδιο πράγμα για τ.

9
00:00:21,880 --> 00:00:25,660
Ας ξαναγράψουμε τη δήλωση αυτή κορδόνι
ως char αστέρι.

10
00:00:25,660 --> 00:00:28,690
Και τώρα πρέπει να υπάρχει πλέον
συγκρίνουν s κατά t, μήπως

11
00:00:28,690 --> 00:00:30,150
συγκρίνουμε δύο διευθύνσεις.

12
00:00:30,150 --> 00:00:33,180
Θέλουμε να συγκρίνουν πραγματικά το
δύο ίδιοι χορδές.

13
00:00:33,180 --> 00:00:37,520
Για να γίνει αυτό, μπορούμε να χρησιμοποιήσουμε μια συνάρτηση
δηλωθεί στην string.h.

14
00:00:37,520 --> 00:00:40,920
Έτσι, εγώ θα προσθέσω ότι περιλαμβάνουν
στην κορυφή του αρχείου μου.

15
00:00:40,920 --> 00:00:43,130
>> Και μετά θα πάω στην αλλαγή
αυτή τη γραμμή εδώ.

16
00:00:43,130 --> 00:00:47,920
Αντί να συγκρίνουν s κατά t, είμαι
πρόκειται να καλέσετε ένα δείγμα σάλο λειτουργία,

17
00:00:47,920 --> 00:00:52,290
για σύγκρισης συμβολοσειράς, και να περάσει
στην ως επιχειρήματα s και t.

18
00:00:52,290 --> 00:00:56,480
Θα αναβάλει συνέχεια σε string σε σύγκριση με
καταλάβω αν s και t είναι πράγματι ίσες

19
00:00:56,480 --> 00:00:59,870
και αφήστε το να καταλάβω πώς να συγκρίνετε
τους χαρακτήρα για τον χαρακτήρα.

20
00:00:59,870 --> 00:01:02,410
>> Τώρα, σύμφωνα με την τεκμηρίωση
για σύγκρισης συμβολοσειράς, είναι στην πραγματικότητα

21
00:01:02,410 --> 00:01:06,920
πρόκειται να επιστρέψει 0 αν οι δύο χορδές
υποδεικνύεται από τα s και t είναι τα ίδια.

22
00:01:06,920 --> 00:01:09,490
Είναι πρόκειται να επιστρέψει έναν αρνητικό αριθμό
αν s πρέπει να έρθει πριν από τ

23
00:01:09,490 --> 00:01:13,740
αλφαβητικά ή ένας θετικός αριθμός, αν
s πρέπει να έρθει μετά από t αλφαβητικά.

24
00:01:13,740 --> 00:01:16,090
>> Αλλά για τώρα, έχουμε μόνο τη φροντίδα
για την ισότητα.

25
00:01:16,090 --> 00:01:19,270
Έτσι, Πάω απλά να ελέγξετε εάν η
τιμή επιστροφής της σύγκρισης συμβολοσειράς,

26
00:01:19,270 --> 00:01:21,450
περνώντας s και t, ισούται με μηδέν.

27
00:01:21,450 --> 00:01:24,940
Και αν ναι, θα πάω να υποστηρίζουν ότι
οι δύο χορδές είναι το ίδιο.

28
00:01:24,940 --> 00:01:26,820
>> Αλλά Πάω να κάνω ένα
άλλη αλλαγή, καθώς και.

29
00:01:26,820 --> 00:01:30,410
Αποδεικνύεται ότι το πάρει σειρά, ανά τους
τεκμηρίωση, μπορεί μερικές φορές να επιστρέψει

30
00:01:30,410 --> 00:01:34,320
null, μια τιμή δείκτη που, σύμφωνα με
να πάρει χορδές τεκμηρίωση, μέσα

31
00:01:34,320 --> 00:01:35,450
κάτι κακό συνέβη.

32
00:01:35,450 --> 00:01:38,830
Για παράδειγμα, τρέξαμε έξω από τη μνήμη ή
ο χρήστης με κάποιο τρόπο δεν συνεργάζονται.

33
00:01:38,830 --> 00:01:41,080
>> String συγκρίνουν, εν τω μεταξύ,
είναι λίγο εύθραυστη.

34
00:01:41,080 --> 00:01:44,730
Αν περάσει το null είτε της
πρώτο ή το δεύτερο επιχείρημα, τα κακά

35
00:01:44,730 --> 00:01:45,650
πράγματα μπορούν να συμβούν.

36
00:01:45,650 --> 00:01:47,970
Άσχημα πράγματα που συνήθως αφορούν
ελαττώματα τμηματοποίησης.

37
00:01:47,970 --> 00:01:52,210
Έτσι, για να αποφευχθεί αυτό το δυναμικό συνολικά,
Είμαι πρώτος πρόκειται να τυλίξει τη χρήση αυτή της

38
00:01:52,210 --> 00:01:56,350
σύγκρισης συμβολοσειράς από την εσοχή όλο αυτό το
μπλοκ του κώδικα και η πρώτη κάνει μόνο

39
00:01:56,350 --> 00:02:03,140
ότι αν s δεν είναι ίση με null
και t δεν είναι ίση με null.

40
00:02:03,140 --> 00:02:08,280
>> Αναδίπλωση ότι αν else που θα
δακτυλογραφημένες νωρίτερα με αγκύλες, όπως

41
00:02:08,280 --> 00:02:12,270
καλά, έτσι ώστε αυτή τη φορά μόνο αγγίζετε
s και t, αν και είμαι σίγουρος ότι

42
00:02:12,270 --> 00:02:13,450
δεν είναι null.

43
00:02:13,450 --> 00:02:17,220
Ας σώσει τώρα, την κατάρτιση, και
εκτελέστε ξανά το πρόγραμμα.

44
00:02:17,220 --> 00:02:22,240
>> Κάντε συγκρίνουν 1 dot κάθετος συγκρίνουν 1.

45
00:02:22,240 --> 00:02:23,950
Θα πω ένα γεια και πάλι.

46
00:02:23,950 --> 00:02:25,890
Ακολουθούμενη από γειά σου και πάλι.

47
00:02:25,890 --> 00:02:28,110
Και αυτή τη φορά, μάλιστα
πληκτρολογήστε το ίδιο πράγμα.

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