[Powered by Google Translate] [Command-Line arqumentləri] [Christopher Bartolomeos - Harvard Universiteti] [- CS50.TV Bu CS50 edir] Bir proqram üçün faydalı xüsusiyyət istifadəçi girişi qəbul edir. Bu günə qədər biz CS50 kitabxana ərzində bəzi funksiyaları tədqiq etdik kimi istifadəçi giriş, qəbul etmək ", simli olsun" ərizə çalışırken bir string üçün, istifadəçi ister. Sizin proqram daxil təmin istədiyiniz Lakin halları var əslində çalışan əvvəl. Bu yolla, siz istifadəçi əlavə məlumat tələb etmək lazım deyil bir sadə məsələ icra edir. , Misal üçün, mv ya UNIX hərəkət əmr edin. Bu skript istifadəçi bir yerdən başqa bir fayl hərəkət etməyə imkan verir. Əl pages görə, mv iki command line arguments qəbul edir: bir fayl köçürülüb olunur və yeri fayl köçürülüb olunur. Beləliklə, bu nümunə iki dəlilləri ilə bir komanda var. Belə ki, necə biz bu komanda-line dəlilləri istifadə üçün C proqram deyə bilərəm? Bəli, biz bütün C proqramları istifadə əsas,, gizli ki çıxır. Argc və argv: Ana iki parametr qəbul edir. Nin bu şərtləri üzərində getmək edək. Arqument sayı tərəfdardır olan ilk parametr, argc, tam bir veri növü var. Bu argc parametri command o cümlədən arqumentlər sayı ehtiva edir. Bizim hərəkət komanda, biz yalnız iki arqumentləri nümayiş baxmayaraq, argc dəyəri 3 olacaq. Arqument vektor tərəfdardır olan ikinci parametr, argv, strings qeyd edir ki, char göstəricilər bir sıra edir. Bu, argv hər element, sıfırdan başlayaraq o deməkdir ki, əmri və dəlilləri ehtiva edir. Məsələn, argv [0], I, argv sıfır kimi istinad lazımdır həmişə run olunur skript ehtiva edir - bu halda, mv. argv [1] file.txt ilk dəlil, ehtiva edir və argv [2] ikinci dəlil ehtiva edir, ~ / cs50 /. Argv keçən arqument həmişə null olacaq. Belə nin bu komanda-line arguments həyata bildirin. Əvvəlki təlimlərdə, Biz əsas nin parametr kimi, heç bir şey, yəni etibarsız yerləşdirilmişdir. Lakin, üçün bizə əmr-line dəlilləri istifadə etmək üçün Biz əsas int argc, char * argv [] və etibarsız və yeri daxilində aradan qaldırılması lazımdır. İndi dəlilləri olan argv olan bütün element daxil olmaq üçün, sadəcə bu kimi array vasitəsilə təkrarlamaq, və ya loop bilər. Belə ki, daxili main bədən, biz irəliyə getmək və loop üçün yazın olacaq: üçün (int i = 0; i Daxildir. Belə ki,-nin tərtib və run və bir faktiki dəlil təmin edək. Göründüyü kimi, biz artıq mübahisə hər bir fərdi char dəqiq yeri var. Belə ki, bu. Mən Christopher Bartolomeos edirəm, bu CS50 edir. [CS50.TV]