>> Дэвід Дж. Малан: Давайце рэчы яшчэ адзін крок наперад, цяпер.
Выкажам здагадку, што я не проста хачу друкаваць усе мае програмы
аргументы каманднага радка.
Але я, наадварот, хочаце надрукаваць усе асобныя сімвалы ў кожнай з
мае аргументы каманднага радка, па адным на лінія, так што пасля запуску гэтага
Праграма, Я проста бачу паток знакі на экране, што
калектыўна ад майго паслядоўнасці аргументаў каманднага радка.
>> Ну, як я магу гэта зрабіць?
Я магу трымаць непашкоджаным мой цыкл ад да прычым я не ітэрацыйныя ад I аж да
ARGC для таго, каб інтэграваць па аргументы самі каманднага радка.
Але цяпер, у кожнай ітэрацыі, што пятля, мне трэба зараз перабраць кожны
з сімвалаў або сімвалаў ў пэўнай радка.
Такім чынам, каб зрабіць гэта, мне трэба яшчэ адзін цыкл.
>> Дадамо, што.
для міжнар, давайце назавем гэта J, роўная 0.
Цяпер я збіраюся трэба інтэграваць аж да даўжыні
бягучай радком у ARGV.
Такім чынам, дазвольце мне даць сабе яшчэ адзін мясцовы зменная, мы будзем называць яго п, і ўсталяваць
што роўна даўжыні радкі з ток аргумент, які будзе
знайсці ў ARGV кранштэйна я коскі.
>> Дазвольце мне цяпер ітэрацыі ад J да да н ня варта
прырашчэнне на кожнай ітэрацыі.
Давайце зараз раздрукаваць чалавека знакаў на экране.
Printf% з на гэты раз адбыўся новы лінія, недалёка цытата, коска, і цяпер я
трэба J-й сімвал у аргуменце г-га.
>> Такім чынам, каб атрымаць на гэта, я магу проста пазначыць АРВ кранштэйны я да
атрымаць аргумент г-ю.
І тады я магу пагрузіцца ў адным узроўні глыбей і зрабіць другасны індэкс
Кранштэйны J, якая зачыняе дужка, кропка з коскі, Захаваць.
І давайце цяпер скампіляваць і запусціць гэтую праграму.
>> Зрабіць ARGV2 -
не зусім тое, што я чакаў.
Давайце пракруткі да першага з гэтых паведамленняў пра памылкі.
І ў чырвоным тут, мы бачым памылку, няяўна абвяшчаючы бібліятэчная функцыя
STRLEN з тыпам -
ой, пачакайце хвіліну.
Гэта першы раз, калі я выкарыстаў STRLEN, і я не чакаў
жадаючы яго спачатку, так што я не ўключаюць файл загалоўка, які аб'яўляе
радок функцыя даўжыні.
>> Так у верхняй частцы майго файла, Нагадаем, у мяне ёсць CS50.h.
У мяне ёсць стандартны io.h.
Але, аказваецца, і я ведаю гэта па чытаючы дакументацыю, што мне трэба
трэці файл загалоўка, калі я, на самай справе, хочаце выкарыстоўваць функцыю STRLEN.
Гэта функцыя аб'яўлена ў string.h.
>> Давайце паўторна захаваць файл, кампіляцыя і выкананне.
І на гэты раз, мы не проста см. кожнага з аргументаў.
Мы замест гэтага бачыць кожнага з аргументаў адзін знак за адзін раз.