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