1 00:00:00,000 --> 00:00:00,620 2 00:00:00,620 --> 00:00:03,140 >> DAVID J.馬蘭:讓我們來寫一個程序 提示輸入一個字符串,用戶和 3 00:00:03,140 --> 00:00:07,210 然後進行打印字符串 字符每行的字符之一。 4 00:00:07,210 --> 00:00:10,570 現在,在過去,我們早就這麼做了 大概用方括號表示法, 5 00:00:10,570 --> 00:00:13,680 有效治療字符串 是一個字符數組。 6 00:00:13,680 --> 00:00:17,200 >> 但是這一次,讓我們轉而治療 一個字符串,它到底是什麼,一個 7 00:00:17,200 --> 00:00:18,770 指針或地址。 8 00:00:18,770 --> 00:00:22,420 具體地說,一個地址 字符,的確實地址 9 00:00:22,420 --> 00:00:25,740 第一個字符,在序列 人物,我們共同認識 10 00:00:25,740 --> 00:00:26,860 作為一個字符串。 11 00:00:26,860 --> 00:00:30,740 >> 讓我們首先聲明一個字符串 它到底是什麼,字符*。 12 00:00:30,740 --> 00:00:31,770 我們叫它秒。 13 00:00:31,770 --> 00:00:34,670 然後為其分配回報 獲取字符串的值。 14 00:00:34,670 --> 00:00:36,380 >> 讓我們接下來做一些錯誤檢查。 15 00:00:36,380 --> 00:00:42,920 如果s為null,讓我們立即返回 讓我們不小心 16 00:00:42,920 --> 00:00:45,630 解引用的空指針。 17 00:00:45,630 --> 00:00:49,750 >> 接下來,讓我們遍歷 s中的字符如下。 18 00:00:49,750 --> 00:00:52,390 對於int,我得到0。 19 00:00:52,390 --> 00:00:55,890 n等於s的字符串的長度。 20 00:00:55,890 --> 00:00:58,050 做到這一點,只要i是小於n。 21 00:00:58,050 --> 00:01:00,690 並在每次迭代,增量我。 22 00:01:00,690 --> 00:01:02,710 >> 什麼我們要 做到在每個迭代? 23 00:01:02,710 --> 00:01:06,180 現在,讓我們打印出在每個迭代 單個字符 24 00:01:06,180 --> 00:01:07,910 其次是新的一行。 25 00:01:07,910 --> 00:01:10,010 那麼,什麼性格做 我們要打印? 26 00:01:10,010 --> 00:01:16,850 我提議我們去的地址 等於s的總和再加上我。 27 00:01:16,850 --> 00:01:18,390 >> 現在,為什麼那表情? 28 00:01:18,390 --> 00:01:22,130 嗯,記得保存在s是 第一個字符的地址 29 00:01:22,130 --> 00:01:23,490 在我們的字符串,S。 30 00:01:23,490 --> 00:01:27,470 同時,我正在遞增 每次迭代,以便它從0開始, 31 00:01:27,470 --> 00:01:29,590 然後進到1,然後前進到2。 32 00:01:29,590 --> 00:01:33,870 >> 所以,換句話說,S加我有效 表示的地址 33 00:01:33,870 --> 00:01:35,990 第i個字符秒。 34 00:01:35,990 --> 00:01:40,830 因此,如果我們去那個地址按以下方式 *運算符,我們將要去 35 00:01:40,830 --> 00:01:42,650 第i個字符的字符串。 36 00:01:42,650 --> 00:01:45,700 而這將成為價值 取代我們的佔位符, 37 00:01:45,700 --> 00:01:46,840 C.%的 38 00:01:46,840 --> 00:01:47,840 >> 讓我們確認之多。 39 00:01:47,840 --> 00:01:51,720 讓我們保存,編譯和 運行此程序。 40 00:01:51,720 --> 00:01:55,990 使指針,點斜線指針。 41 00:01:55,990 --> 00:01:58,780 現在我給它一個 串像打招呼。 42 00:01:58,780 --> 00:01:59,600 輸入。 43 00:01:59,600 --> 00:02:03,770 >> 事實上,我看到H-E-L-L-O,帶 每個字符在自己的行。 44 00:02:03,770 --> 00:02:05,410