DAVID J.馬蘭:讓我們拿東西 更進一步,現在。 假設我不只是想 打印我所有的程序的 命令行參數。 但是我,相反,要打印所有的 在每個單獨的字符 我的命令行參數,一個每 行,以便在運行此 程序中,我只看到流 在屏幕上的字符, 集體是從我的序列 命令行參數。 那麼,我該怎麼辦呢? 我可以保持我的完整循環的前 據此,我從我的迭代,直到 ARGC為了整合在 命令行參數本身。 但現在,每一個迭代中 環,我現在需要遍歷每個 的字符或字符的 在一個特定的字符串。 因此,要做到這一點,我需要多一個循環。 讓我們來添加。 對於int,姑且稱之為Ĵ,等於0。 現在,我將需要整合 直到的長度 當前字符串argv中。 所以讓我給自己的另一個地方 變量,我們將Ñ調用它,並設置 即等於該字符串的長度 目前的說法,這將是 在ARGV支架找到我分號。 現在讓我給J了迭代 直到N跟一個 增量在每個迭代。 現在,讓我們打印的個人 字符在屏幕上。 printf的%C後跟一個新的這段時間 線,接近報價,逗號,現在我 需要的第j個字符 在第i個說法。 因此,為了得到那個,我可以簡單地 指定ARV支架i到 得到第i個說法。 然後我可以在一個水平潛得更深 做一個輔助索引 支架Ĵ,右括號, 分號,保存。 而且,我們現在編譯和 運行此程序。 讓ARGV2 - 不完全是我所期待的。 讓我們向上滾動到第一 這些錯誤信息。 而在這裡的紅色,我們看到的錯誤, 隱式聲明的庫函數 strlen的帶型 - 哦,等一下。 這是我第一次用 strlen的,我沒有預料到 希望它在第一,所以我並沒有包括 該聲明的頭文件 一個字符串長度的功能。 所以在我的文件的頂部, 記得,我有CS50.h. 我有標準io.h. 但事實證明,我知道這從 閱讀文檔,我需要 第三頭文件,假如我真的, 要使用strlen函數。 該函數在string.h中聲明。 讓我們重新保存文件, 編譯和運行。 而這個時候,我們做的不只是 看到每個參數。 我們反而看到每個參數 一個字符的時間。