[Powered by Google Translate] [Príkazového riadku Tvrdenia] [Christopher Bartolomeja - Harvard University] [To je CS50 - CS50.TV] Užitočná funkcia pre program je prijať vstup od užívateľa. Doteraz sme preskúmali niektoré funkcie v rámci CS50 knižnici prijímať vstup používateľa, ako je napríklad "dostať reťazec," ktoré vyzve používateľa, zatiaľ čo je aplikácia spustená, pre reťazec. Avšak, existujú prípady, kedy chcete, aby váš program vstup predtým, než je v skutočnosti beží. Týmto spôsobom, nemusíte sa pýtať ďalšie informácie z vášho užívateľa Pri vykonávaní jednoduchá úloha. Zoberme si napríklad, MV alebo presunúť príkaz v UNIXu. Tento príkaz umožňuje užívateľovi presunúť súbor z jedného miesta na druhé. Podľa manuálových stránok, mv prijíma dva argumenty príkazového riadku: súbor, ktorý sa presúva a umiestnenie súboru je presunutá do. Takže tento príklad má príkaz s dvoma argumentmi. Tak ako sme sa povedať, náš C program využiť tieto argumenty príkazového riadku? No, ukázalo sa, že hlavné, ktoré používame vo všetkých programoch C, má nejaké tajomstvo. Hlavné prijíma dva parametre: argc a ArGV. Poďme nad týmito podmienkami. Prvý parameter, argc, čo je skratka pre počet argumentov, má dátový typ integer. The argc parameter obsahuje počet argumentov, vrátane príkazu. V našom pohybe príkazu, aj keď máme len dva argumenty zobrazí, argc je hodnota bude 3. Druhý parameter, ArGV, čo je skratka pre argumentu vektora, je pole char ukazovateľov, ktoré ukazujú na reťazce. To znamená, že každý prvok v ArGV, počnúc od nuly, obsahuje príkaz a argumenty. Napríklad, ArGV [0], ktoré budem odkazovať ako ArGV nulové, bude vždy obsahovať príkaz, ktorý je spustený - v tomto prípade, mv. ArGV [1] bude obsahovať prvý argument, file.txt, a ArGV [2] bude obsahovať druhý argument, ~ / cs50 /. Posledný argument ArGV bude vždy null. Takže poďme zaviesť tieto argumenty príkazového riadku. V predchádzajúcich cvičeniach, sme umiestnili neplatné, čo znamená, nič, je ako parameter hlavné je. Aby sa však pre nás používať argumenty príkazového riadku, musíme odstrániť neplatné a miesto vo vnútri hlavného int argc, char * ArGV []. Teraz, prístup na celý prvok z ArGV, ktoré sú vaše argumenty, môžete jednoducho iterácii, alebo slučka, cez pole, ako je to. Takže, vo vnútri tela hlavných je, že budeme pokračovať a zadajte pre sláčiky: for (int i = 0; i . Takže, poďme kompilovať a spúšťať, a poskytne mu skutočnú argumentáciu. A ako vidíme, máme teraz presnú polohu jednotlivých char v argumente. Tak to je to. Som Christopher Bartolomej, to je CS50. [CS50.TV]