1
00:00:00,000 --> 00:00:00,280

2
00:00:00,280 --> 00:00:02,240
>> DAVID MALAN: Să acum rafina
acest program un pic mai departe.

3
00:00:02,240 --> 00:00:06,510
Nu ar fi frumos dacă ar putea toupper
valorifica o scrisoare dacă litere mici, și

4
00:00:06,510 --> 00:00:08,880
dacă nu cu litere mici, pass
se prin neschimbat?

5
00:00:08,880 --> 00:00:12,110
Cu alte cuvinte, aș putea înlocui
mea dacă-altceva bloc cu o

6
00:00:12,110 --> 00:00:13,960
apel unic de toupper?

7
00:00:13,960 --> 00:00:16,000
>> Ei bine, pentru a răspunde la această întrebare,
Mi-ar consulta cel mai bine

8
00:00:16,000 --> 00:00:17,630
documentație pentru toupper.

9
00:00:17,630 --> 00:00:22,100
Pentru a face acest lucru, permiteți-mi să deschideți un terminal mai mare
fereastră în afara de gedit, și

10
00:00:22,100 --> 00:00:26,060
apoi tastați man toupper, astfel
ceea ce înseamnă că aș dori să deschideți

11
00:00:26,060 --> 00:00:29,060
așa-numitul pagina de manual pentru
toupper funcție.

12
00:00:29,060 --> 00:00:31,580
La apăsarea Enter, văd
un ecran ca aceasta.

13
00:00:31,580 --> 00:00:34,750
Și acum observați că acestea par să aibă
combinate documentația pentru toupper

14
00:00:34,750 --> 00:00:37,010
superior cu care pentru tolower.

15
00:00:37,010 --> 00:00:38,010
Dar nu contează.

16
00:00:38,010 --> 00:00:41,640
>> Veți observa în sinopsis care
Îmi aduc aminte că, într-adevăr, pentru a utiliza această

17
00:00:41,640 --> 00:00:45,220
funcție, trebuie să includă
ctype.h fișier antet.

18
00:00:45,220 --> 00:00:49,520
Mai jos că, veți vedea că este toupper
a declarat ca revenirea un int și

19
00:00:49,520 --> 00:00:52,720
accepta un int, care este un pic
curios, din moment ce până acum, am fost

20
00:00:52,720 --> 00:00:54,370
manipularea numai caractere.

21
00:00:54,370 --> 00:00:55,310
Dar asta e în regulă.

22
00:00:55,310 --> 00:00:59,070
Se pare că aceasta este doar o
convenție, și putem folosi în continuare c ca

23
00:00:59,070 --> 00:01:01,990
deși e un caracter, chiar dacă
este declarat ca un întreg.

24
00:01:01,990 --> 00:01:05,850
>> Acum, în descrierea de aici, văd că
toupper convertește litera c la

25
00:01:05,850 --> 00:01:07,980
litere mari, dacă este posibil.

26
00:01:07,980 --> 00:01:11,520
Și sub valoarea de returnare, văd că
valoarea returnată este cea a

27
00:01:11,520 --> 00:01:15,320
scrisoare convertit, sau C, în cazul în care
conversie nu a fost posibil.

28
00:01:15,320 --> 00:01:17,120
Și nu există o perspectivă
Am fost în căutarea pentru.

29
00:01:17,120 --> 00:01:21,060
Dacă c nu este, de fapt, un minuscule
scrisoare, se pare că va toupper

30
00:01:21,060 --> 00:01:23,450
pur și simplu trece de-a lungul neschimbat.

31
00:01:23,450 --> 00:01:25,750
>> Deci, haideți acum întoarce la codul meu.

32
00:01:25,750 --> 00:01:30,480
Și să scoateți acum totalitatea
acest bloc condiționat și înlocuiți-l,

33
00:01:30,480 --> 00:01:40,240
destul de simplu, cu printf% c virgulă
toupper de s suport i închide paren

34
00:01:40,240 --> 00:01:45,120
paren aproape de punct și virgulă, astfel
ceea ce înseamnă că aș vrea să înlocuiască% c

35
00:01:45,120 --> 00:01:49,050
cu capitalizarea
scrisoare-lea în cazul în care s a ia

36
00:01:49,050 --> 00:01:50,530
scrisoare în s este litere mici.

37
00:01:50,530 --> 00:01:53,710
Sau chiar dacă nu e, aceasta va fi
trecut prin neschimbate.

38
00:01:53,710 --> 00:01:58,790
>> Hai acum compila acest program cu
face capitalize2, și rulați-l cu

39
00:01:58,790 --> 00:02:01,800
capitalize2, din nou, tastând salut.

40
00:02:01,800 --> 00:02:03,800
Și într-adevăr, ne întoarcem cu majuscule.

41
00:02:03,800 --> 00:02:05,090
Hai din nou tip David.

42
00:02:05,090 --> 00:02:06,340
Și, de asemenea, este majuscule.

43
00:02:06,340 --> 00:02:09,380