1 00:00:00,000 --> 00:00:00,280 2 00:00:00,280 --> 00:00:02,240 >> DAVID馬蘭:現在,讓我們完善 這個程序遠一點。 3 00:00:02,240 --> 00:00:06,510 那豈不是很好,如果能TOUPPER 大寫字母,如果小寫,並且 4 00:00:06,510 --> 00:00:08,880 如果不是小寫,通 它通過改變? 5 00:00:08,880 --> 00:00:12,110 換句話說,我能代替 我用的if-else塊 6 00:00:12,110 --> 00:00:13,960 單調用ToUpper的? 7 00:00:13,960 --> 00:00:16,000 >> 好了,要回答這個問題, 我想最好的諮詢 8 00:00:16,000 --> 00:00:17,630 文檔轉換大寫。 9 00:00:17,630 --> 00:00:22,100 要做到這一點,讓我打開一個較大的終端 gedit的窗口外面, 10 00:00:22,100 --> 00:00:26,060 然後輸入man轉換大寫,從而 標誌著我想開了 11 00:00:26,060 --> 00:00:29,060 所謂的手冊頁。 功能轉換大寫。 12 00:00:29,060 --> 00:00:31,580 當按下ENTER鍵,我看到 屏幕贊一個。 13 00:00:31,580 --> 00:00:34,750 現在發現,他們似乎有 結合對轉換大寫的文檔 14 00:00:34,750 --> 00:00:37,010 鞋面採用,對於tolower的。 15 00:00:37,010 --> 00:00:38,010 但不管。 16 00:00:38,010 --> 00:00:41,640 >> 故事大綱下你會發現, 我提醒說,事實上,使用這種 17 00:00:41,640 --> 00:00:45,220 功能,我必須包括 頭文件ctype.h中。 18 00:00:45,220 --> 00:00:49,520 下面,你看到的是TOUPPER 聲明為返回一個int和 19 00:00:49,520 --> 00:00:52,720 接受一個int,這是一個有點 好奇,因為到目前為止,我已經 20 00:00:52,720 --> 00:00:54,370 只有操縱字符。 21 00:00:54,370 --> 00:00:55,310 不過沒關係。 22 00:00:55,310 --> 00:00:59,070 事實證明,這僅僅是一個 慣例,我們仍然可以用c為 23 00:00:59,070 --> 00:01:01,990 雖然它是一個char,即使 它聲明為一個int。 24 00:01:01,990 --> 00:01:05,850 >> 現在,在這裡的描述,我看到 轉換大寫字母轉換成C至 25 00:01:05,850 --> 00:01:07,980 大寫如果可能的話。 26 00:01:07,980 --> 00:01:11,520 並根據返回值,我看到 返回的值是的 27 00:01:11,520 --> 00:01:15,320 轉換後的字母,或c,如果 轉化率是不可能的。 28 00:01:15,320 --> 00:01:17,120 並有敏銳的洞察力 我一直在尋找。 29 00:01:17,120 --> 00:01:21,060 如果c是不是,事實上,一個小寫 信中,似乎將TOUPPER 30 00:01:21,060 --> 00:01:23,450 只需沿著不變傳遞。 31 00:01:23,450 --> 00:01:25,750 >> 現在讓我們回到我的代碼。 32 00:01:25,750 --> 00:01:30,480 而現在讓我們去掉的全部 這個條件塊和替換它, 33 00:01:30,480 --> 00:01:40,240 很簡單,用printf的%C逗號 轉換大寫s支架的我關閉括號 34 00:01:40,240 --> 00:01:45,120 接近括號分號,從而 標誌著我想替換掉%C 35 00:01:45,120 --> 00:01:49,050 用的資本化 s中第i個字母,如果第i個 36 00:01:49,050 --> 00:01:50,530 字母s中的小寫。 37 00:01:50,530 --> 00:01:53,710 或者即使它不是,它會 加改變地通過。 38 00:01:53,710 --> 00:01:58,790 >> 現在,讓我們用編譯這個程序 讓capitalize2,並與運行 39 00:01:58,790 --> 00:02:01,800 capitalize2,再次鍵入hello。 40 00:02:01,800 --> 00:02:03,800 而事實上,我們回來大寫。 41 00:02:03,800 --> 00:02:05,090 讓我們再次鍵入大衛。 42 00:02:05,090 --> 00:02:06,340 而且,也同樣是大寫的。 43 00:02:06,340 --> 00:02:09,380