command line arguments c
O scurtă introducere la argumentele liniei de comandă în C ++.
Am văzut deja utilizarea argumentelor sau parametrilor în tutorialul nostru despre funcții. De asemenea, am învățat scopul de a transmite argumente către / din funcții.
De asemenea, putem avea argumente transmise funcției principale. La rândul lor, acestea sunt cunoscute sub numele de „Argumente de linie de comandă sau Parametri de linie de comandă”.
=> Verificați aici pentru a vedea A-Z a tutorialelor de formare C ++ aici.
Ce veți învăța:
- Ce sunt argumentele liniei de comandă?
- Cum să citiți / să obțineți argumente pentru linia de comandă?
- Concluzie
- Lectură recomandată
Ce sunt argumentele liniei de comandă?
Cunoaștem prototipul de bază al funcției principale în C ++. De obicei are tipul returnat ca int și nu i se transmit argumente.
convertor de la YouTube la mp3 care funcționează
int main()
Cu toate acestea, putem transmite, de asemenea, argumente funcției principale a C ++, cunoscute sub numele de Argumente de linie de comandă. Argumentele liniei de comandă sunt date după numele programului în timpul executării programului într-un shell de linie de comandă.
Pentru a trece argumente din linia de comandă, funcția principală este transmisă cu două argumente. Prototipul funcției principale se schimbă apoi în
int main(int argc, char* argv()){}
SAU
int main(int argc, char** argv){}
Cele două argumente sunt descrise mai jos:
# 1) Număr de argumente (ARGC)
Acesta este un argument întreg negativ care deține numărul de argumente din linia de comandă, inclusiv numele programului. Astfel, dacă este trecut un nume de program, atunci argc va avea valoarea 1.
# 2) Vector argument (ARGV)
Argv este o matrice de indicatori de caractere care conține toate argumentele din linia de comandă transmise funcției principale. Dacă ARGC este mai mare decât zero, atunci Argv (0) va conține numele programului. Argv (1) to argv (argc -1) va conține celelalte argumente din linia de comandă.
Cum să citiți / să obțineți argumente pentru linia de comandă?
După ce am văzut parametrii care dețin numărarea și argumentele reale ale liniei de comandă, să vedem cum putem folosi argumentele liniei de comandă într-un program C ++.
Rețineți că trebuie să rulăm programul din shell-ul liniei de comandă pentru a obține funcționalitatea completă a argumentelor liniei de comandă.
fișierele .torrent cum se deschid
În primul rând, să vedem rezultatul programului în care nu specificăm niciun argument de linie de comandă.
#include using namespace std; int main(int argc, char** argv) { cout << 'Number of command line arguments (argc) entered: ' << argc<Exemplul de cod de mai sus arată cum putem citi și analiza argumentele liniei de comandă.
În primul rând, imprimăm numărul de argumente din linia de comandă care este dat direct de primul parametru funcției principale, argc. Apoi folosind pentru buclă, trecem prin vectorul argument argc care este o matrice de caractere.
Această buclă rulează de la 0 la argc, deoarece argc este numărul total de argumente din linia de comandă care au fost transmise programului în timpul execuției.
Acum vom executa programul de mai sus,
# 1) Fără a trece argumentele liniei de comandă.
În acest caz, executăm programul de mai sus folosind următoarea comandă:
$ ./a.out
Aici, pur și simplu executăm programul fără niciun argument de linie de comandă. Ieșirea este prezentată mai jos. În acest caz, deoarece nu sunt furnizate argumente, este luat doar numele programului și argc afișează 1 care este argv (0) care este numele programului.
Ieșire:
Numărul de argumente din linia de comandă (argc) introduse: 1
argv (0): ./a.out
# 2) Trecerea a trei argumente pentru linia de comandă
În acest caz, trecem trei argumente liniei de comandă dând următoarea comandă.
$ ./a.out one two three
Aici am dat trei argumente de linie de comandă.
software pentru a descărca videoclipuri de pe YouTube
Când executăm programul de mai sus cu aceste argumente, obținem următoarea ieșire.
Numărul de argumente din linia de comandă (argc) introduse: 4
argv (0): ./a.out
argv (1): unul
argv (2): doi
argv (3): trei
Ieșirea de mai sus arată valoarea argc ca 4. Aceasta include numele programului și cele trei argumente pe care le-am introdus pe linia de comandă. Dacă vedem matricea argv pe care o imprimăm, argv (0) este numele programului, iar elementele matricei ulterioare conțin cele trei argumente pe care le-am trecut.
Puncte de reținut
- În argumentele din linia de comandă, argv (argc) este un pointer NULL.
- Argv (0) deține întotdeauna numele programului.
- Argv (1) deține primul argument al liniei de comandă în timp ce argv (n) este ultimul argument al liniei de comandă.
- Argumentele liniei de comandă sunt transmise funcției principale.
- Ar trebui să trecem argumente de linie de comandă atunci când programul este invocat sau executat.
- Argumentele din linia de comandă controlează programul din exterior pe măsură ce trecem argumentele prin linia de comandă.
Concluzie
În acest tutorial, am văzut argumentele de linie de comandă ale C ++.
Acestea sunt cu adevărat utile atunci când trebuie să controlăm programul extern. De asemenea, în loc să codificăm unele valori din program, putem folosi argumente din linia de comandă pentru a transmite aceste valori.
=> Verificați aici seria completă de formare C ++.
Lectură recomandată
- Argumente de linie de comandă în scriptul Shell Unix cu exemplu
- Tăiați comanda în Unix cu exemple
- Sintaxa de comandă Cat Unix, Opțiuni cu exemple
- Comanda Ls în Unix cu exemple
- Comanda Grep în Unix cu exemple simple
- Comanda de sortare Unix cu sintaxă, opțiuni și exemple
- Comanda Tar în Unix pentru a crea copii de rezervă (exemple)
- Cea mai bună serie de tutoriale GRATUITE C #: Ghidul final C # pentru începători