[Powered by Google Translate] [Naredbenog retka argumente] [Christopher Bartolomej - Sveučilište Harvard] [Ovo je CS50 - CS50.TV] Korisna značajka za program je prihvatiti korisničkog unosa. Dosad smo istražili neke funkcije unutar CS50 knjižnici prihvatiti korisničkog unosa, kao što su "dobili niz" koji traži od korisnika, a aplikacija je trčanje, za niz. Međutim, postoje slučajevi u kojima želite dati svoj doprinos programa prije nego što zapravo radi. Na taj način, ne morate tražiti dodatne informacije od svog korisnika dok izvršavanju jednostavan zadatak. Uzmite, na primjer, SN ili premjestiti naredbu u UNIX. Ova naredba omogućuje korisniku premjestiti datoteku s jednog mjesta na drugo. Prema priručniku stranicama, mv prihvaća dva argumenta naredbenog retka: datoteku koja se preselila i mjesto je datoteka se preselio. Dakle, ovo je primjer ima naredbu s dva argumenta. Pa kako ćemo reći naš C program koristiti ove naredbenog retka argumente? Pa, ispada da glavni, koji ćemo koristiti u svim programima C, ima tajnu. Glavni prihvaća dva parametra: argc i argv. Idemo nad tim uvjetima. Prvi parametar, argc, koja se zalaže za argument count, ima vrstu podataka cijeli broj. The argc parametar sadrži niz argumenata, uključujući naredbe. U našem potez naredbe, iako smo samo dva argumenta prikazana, argc je vrijednost će biti tri. Drugi parametar, argv, koja se zalaže za argument vektora, je niz char upućuje da ukazuju na žice. To znači da svaki element u argv, počevši od nule, sadrži naredbu i argumente. Na primjer, argv [0], što ću nazivaju argv nula, uvijek će sadržavati naredbu da se pokrenuti - u ovom slučaju, mv. argv [1] će sadržavati prvi argument file.txt, i argv [2] će sadržavati drugi argument, ~ / cs50 /. Posljednji argument argv uvijek će biti nula. Tako ćemo provesti ove naredbenog retka argumente. U prethodnim vježbama, smo stavili prazninu, što znači ništa, kao glavni je parametar. Međutim, kako bi za nas da koriste naredbenog retka argumente, moramo ukloniti šupljikave i mjesto unutar glavnog int argc, char * argv []. Sada, da biste pristupili cijeli element iz argv, koji su vaši argumenti, možete jednostavno ponoviti, ili petlja kroz niz ovako. Dakle, unutar glavnih tijela, idemo ići naprijed i upišite for petlje: za (int i = 0; ja . Dakle, neka je sastaviti i pokrenuti i pružiti mu stvarni argument. I, kao što možemo vidjeti, mi sada imamo točnu lokaciju svakog pojedinog char u argument. Dakle, to je to. Ja sam Christopher Bartolomej, ovo je CS50. [CS50.TV]