command line arguments c
Een korte inleiding tot opdrachtregelargumenten in C ++.
We hebben het gebruik van argumenten of parameters al gezien in onze tutorial over functies. We leerden ook het doel van het doorgeven van argumenten aan / van functies.
We kunnen ook argumenten laten doorgeven aan de hoofdfunctie. Deze staan op hun beurt bekend als ‘Opdrachtregelargumenten of Opdrachtregelparameters’.
Kijk hier om A-Z van C ++ trainingshandleidingen hier te zien.
Wat je leert:
- Wat zijn opdrachtregelargumenten?
- Hoe opdrachtregelargumenten te lezen / krijgen?
- Gevolgtrekking
- Aanbevolen literatuur
Wat zijn opdrachtregelargumenten?
We kennen het basisprototype van de hoofdfunctie in C ++. Het heeft meestal het retourtype int en er worden geen argumenten aan doorgegeven.
converteer ascii naar int c ++
We kunnen echter ook argumenten doorgeven aan de hoofdfunctie van C ++, die bekend staan als opdrachtregelargumenten. Commandoregelargumenten worden achter de naam van het programma gegeven tijdens de uitvoering van het programma in een commandoregel-shell.
Om opdrachtregelargumenten door te geven, wordt de hoofdfunctie met twee argumenten doorgegeven. Het prototype van de hoofdfunctie verandert dan in
OF
De twee argumenten worden hieronder beschreven:
# 1) Argumententelling (ARGC)
Dit is een niet-negatief integer-argument dat het aantal opdrachtregelargumenten bevat, inclusief de programmanaam. Dus als pass een programmanaam wordt doorgegeven, heeft argc de waarde 1.
# 2) Argumentvector (ARGV)
Argv is een reeks tekenaanwijzers die alle opdrachtregelargumenten bevat die aan de hoofdfunctie zijn doorgegeven. Als ARGC groter is dan nul, dan bevat Argv (0) de naam van het programma. Argv (1) tot en met argv (argc -1) zullen de andere opdrachtregelargumenten bevatten.
Hoe opdrachtregelargumenten te lezen / krijgen?
Nu we de parameters hebben gezien die count en feitelijke opdrachtregelargumenten bevatten, laten we eens kijken hoe we opdrachtregelargumenten kunnen gebruiken in een C ++ -programma.
Merk op dat we het programma vanaf de commandoregel-shell moeten draaien om de volledige functionaliteit van commandoregel-argumenten te krijgen.
Laten we eerst eens kijken naar de uitvoer van het programma waarin we geen opdrachtregelargumenten specificeren.
Het bovenstaande codevoorbeeld laat zien hoe we de opdrachtregelargumenten kunnen lezen en ontleden.
Eerst drukken we het aantal opdrachtregelargumenten af dat direct door de eerste parameter aan de hoofdfunctie, argc, wordt gegeven. Vervolgens gebruiken we de for-lus, we doorlopen de argumentvector argc die een tekenreeks is.
Deze lus loopt van 0 tot argc omdat argc het totale aantal opdrachtregelargumenten is dat tijdens de uitvoering aan het programma is doorgegeven.
Nu zullen we het bovenstaande programma uitvoeren,
# 1) Zonder opdrachtregelargumenten door te geven.
In dit geval voeren we het bovenstaande programma uit met de volgende opdracht:
Hier voeren we het programma eenvoudig uit zonder enige opdrachtregelargumenten. De output wordt hieronder getoond. In dit geval, aangezien er geen argumenten worden opgegeven, wordt alleen de programmanaam gebruikt en geeft argc 1 weer, wat argv (0) is, dat is de programmanaam.
Uitgang:
Aantal ingevoerde opdrachtregelargumenten (argc): 1
verschil tussen gezond verstand en rooktesten
argv (0): ./a.out
# 2) Drie opdrachtregelargumenten doorgeven
In dit geval geven we drie argumenten door aan de opdrachtregel door de volgende opdracht te geven.
Hier hebben we drie opdrachtregelargumenten gegeven.
Als we het bovenstaande programma met deze argumenten uitvoeren, krijgen we de volgende uitvoer.
Aantal ingevoerde opdrachtregelargumenten (argc): 4
argv (0): ./a.out
argv (1): een
argv (2): twee
argv (3): drie
De bovenstaande uitvoer toont argc-waarde als 4. Dit omvat de programmanaam en de drie argumenten die we op de opdrachtregel hebben ingevoerd. Als we de argv-array zien die we afdrukken, is argv (0) de programmanaam en bevatten de volgende array-elementen de drie argumenten die we hebben doorgegeven.
Punten om te onthouden
- In opdrachtregelargumenten is argv (argc) een NULL-pointer.
- Argv (0) bevat altijd de programmanaam.
- Argv (1) bevat het eerste opdrachtregelargument terwijl argv (n) het laatste opdrachtregelargument is.
- Commandoregelargumenten worden doorgegeven aan de hoofdfunctie.
- We moeten opdrachtregelargumenten doorgeven wanneer het programma wordt aangeroepen of uitgevoerd.
- Opdrachtregelargumenten besturen het programma van buitenaf terwijl we de argumenten doorgeven via de opdrachtregel.
Gevolgtrekking
In deze tutorial hebben we de opdrachtregelargumenten van C ++ gezien.
Deze zijn erg handig als we het programma extern moeten besturen. Ook in plaats van sommige waarden in het programma hard te coderen, kunnen we opdrachtregelargumenten gebruiken om deze waarden door te geven.
beste gratis registry cleaners voor windows 10
Bekijk hier de complete C ++ trainingsserie.
Aanbevolen literatuur
- Opdrachtregelargumenten in Unix Shell-script met voorbeeld
- Snijd Commando in Unix met voorbeelden
- Unix Cat Command Syntax, opties met voorbeelden
- Ls Command in Unix met voorbeelden
- Grep-opdracht in Unix met eenvoudige voorbeelden
- Unix-sorteeropdracht met syntaxis, opties en voorbeelden
- Tar-commando in Unix om back-ups te maken (voorbeelden)
- Beste GRATIS C # Tutorial-serie: de ultieme C # -gids voor beginners