1 00:00:00,000 --> 00:00:00,280 2 00:00:00,280 --> 00:00:02,240 >> DAVID Malan: Pojďme se nyní upřesnit tento program kousek dál. 3 00:00:02,240 --> 00:00:06,510 Nebylo by hezké, kdyby toupper mohl Velké písmeno, pokud malá, a 4 00:00:06,510 --> 00:00:08,880 není-li malá, průchod to prostřednictvím beze změny? 5 00:00:08,880 --> 00:00:12,110 Jinými slovy, mohl bych nahradit můj if-else bloku s 6 00:00:12,110 --> 00:00:13,960 jediná výzva k toupper? 7 00:00:13,960 --> 00:00:16,000 >> No, odpověď na tuto otázku, Já bych nejlépe poradit 8 00:00:16,000 --> 00:00:17,630 dokumentace pro toupper. 9 00:00:17,630 --> 00:00:22,100 Chcete-li tak učinit, dovolte mi otevřít větší terminál window mimo gedit, a 10 00:00:22,100 --> 00:00:26,060 zadejte man toupper, čímž znamenat, že bych chtěl otevřít 11 00:00:26,060 --> 00:00:29,060 tzv. manuálové stránky pro funkce toupper. 12 00:00:29,060 --> 00:00:31,580 Po stisknutí klávesy Enter, vidím obrazovce, jako je tento. 13 00:00:31,580 --> 00:00:34,750 A teď si všimnout, že se zdá, že v kombinaci dokumentaci pro toupper 14 00:00:34,750 --> 00:00:37,010 svršek s tím pro tolower. 15 00:00:37,010 --> 00:00:38,010 Ale bez ohledu na to. 16 00:00:38,010 --> 00:00:41,640 >> Určitě jste si všimli pod synopse, že Připomíná mi to, že skutečně používat tento 17 00:00:41,640 --> 00:00:45,220 funkce, musím zahrnout hlavičkový soubor ctype.h. 18 00:00:45,220 --> 00:00:49,520 Pod to, uvidíte, že toupper je deklarován jako vracející int a 19 00:00:49,520 --> 00:00:52,720 přijímá int, což je trochu zvědavý, protože tak daleko, byl jsem 20 00:00:52,720 --> 00:00:54,370 manipulovat pouze znaky. 21 00:00:54,370 --> 00:00:55,310 Ale to je v pořádku. 22 00:00:55,310 --> 00:00:59,070 Ukazuje se, že je to jen konvence, a stále ještě můžeme použít jako c 23 00:00:59,070 --> 00:01:01,990 i když je to znak, i když to je deklarován jako int. 24 00:01:01,990 --> 00:01:05,850 >> Nyní, v popisu zde, vidím, že toupper převede písmeno c 25 00:01:05,850 --> 00:01:07,980 velká písmena, pokud je to možné. 26 00:01:07,980 --> 00:01:11,520 A pod návratovou hodnotu, vidím, že vrácená hodnota je, že 27 00:01:11,520 --> 00:01:15,320 převedený písmeno, nebo c, v případě, že konverze nebylo možné. 28 00:01:15,320 --> 00:01:17,120 A je tu pohled Hledal jsem pro. 29 00:01:17,120 --> 00:01:21,060 Je-li c není ve skutečnosti malá dopis, zdá se, že toupper bude 30 00:01:21,060 --> 00:01:23,450 jednoduše předat ji spolu beze změny. 31 00:01:23,450 --> 00:01:25,750 >> Takže pojďme se vrátit do svého kódu. 32 00:01:25,750 --> 00:01:30,480 A pojďme nyní odstranit celistvost Tento podmíněný blok a vyměňte ji, 33 00:01:30,480 --> 00:01:40,240 docela jednoduše, s printf% c čárkou toupper S konzoly i zavřít závorka 34 00:01:40,240 --> 00:01:45,120 zavřít závorka středník, čímž znamenat, že bych chtěl vyměnit% c 35 00:01:45,120 --> 00:01:49,050 s kapitalizací i-té písmeno v s-li i-tý 36 00:01:49,050 --> 00:01:50,530 dopis v s je malá. 37 00:01:50,530 --> 00:01:53,710 Nebo i když to tak není, bude prošel beze změny. 38 00:01:53,710 --> 00:01:58,790 >> Pojďme se nyní zkompilovat tento program aby capitalize2, a spusťte jej 39 00:01:58,790 --> 00:02:01,800 capitalize2, znovu, psaní ahoj. 40 00:02:01,800 --> 00:02:03,800 A skutečně, vrátíme velká písmena. 41 00:02:03,800 --> 00:02:05,090 Pojďme znovu zadejte David. 42 00:02:05,090 --> 00:02:06,340 A to je taky velká. 43 00:02:06,340 --> 00:02:09,380