[Powered by Google Translate] [Command-Line Arguments]
[Christopher Bartholomeus - Harvard University]
[Hoc est CS50 - CS50.TV]
A utilis pluma pro progressio est accipere user input.
Hactenus, weve explorantur functiones quascunque intra CS50 library
accipere user input, ut "adepto chorda,"
Praesent quod promptus, et applicatur currat, fili.
>> Sunt autem quibus placet providere proposuisti input
ante actualiter sit cursor.
Sic Nullam a risus non oportet quaerere
dum exequen simplex labor.
Accipite, pro exemplo, mv seu movéntur imperium in Unix.
Aliquam lima sinit ire praecipit de loco in locum alterius.
Secundum manual pages, mv acceptat duo order versus argumentorum:
quod lima limae movetur ad motum et locum.
Hoc exemplum ideo mandatum duplici ratione.
Quid est ergo dicere nostro C progressio ut utilitas his imperio-line dicuntur?
>> Atqui id maxime fit, quibus utimur in C progressio est sacramentum.
Main acceptat duo parametris: argc et argv.
His verbis eamus.
>> Primum parametri, argc, qui stas in argumentum comes,
habet a notitia typus of integer.
In argc parameter continet plures rationes, comprehendo imperio.
In nostra movéntur imperio, licet nos soli duo argumenta proponendum,
argc scriptor valor erit III.
Secundo parametri, argv, qui stas in argumentum vector,
est ordinata chari indicibusque illo puncto ad tangite.
>> Unde argv singulari, a nihilo,
continet imperio et rationes.
Pro exemplo, argv [0], quam ego Peius 'referuntur ad sicut argv nulla,
semper continent preceptum quod est res run -
in hoc casu, mv.
argv [I] continebit primum argumentum, file.txt,
et argv [II] continebit secundam rationem, ~ / cs50 /.
Nulla erit ratio ultima argv.
Sic lets 'implement his imperio-line argumenta.
In superioribus exercitationes, posuimus vacuo, quod interpretatur nihil, ut main scriptor modularis.
Sed ut recta imperii nobis uti rationibus
nos postulo ut aufero vacuo et locum inside of main int argc, chari * argv [].
Ut elementum a toto obvius argv quae ista,
vos can simplex RESUMO, aut ansam veniat, per array sicut est hodie.
Sic, inside of main corpus, erant 'iens ut grassor et typus a, pro loop:
nam (int i = 0; i <argc; i + +).
>> Nos operor non postulo a crispus ue hic, quia erant 'solum impleatis, una linea of ​​code
intra corpus hoc loop.
Puteus 'grassor ledo tab semel,
tunc typus printf ("argv [% d], ad repraesentandum integer valorem,
est% s, pro nervo, tunc nova linea character.
Deinde nos, providere printf i pro current iteratione de loop
et argv [i] pro chorda repraesentationem current imperio-line argumentum.
Cum duo currunt cum argumentis rationibus puteus 'animadverto ut terminum ostendit.
Nobis superius dixit quod argv tenuisset array chari indicibusque.
>> Si ita est, quomodo ergo in persona tare accedere?
Nam si quis velit in primam speciem quaeritur?
Bene autem dicitur quod oportet ut ansa habitant
Ergo per quodlibet elementorum REDDO quod tendit argumentum.
Sic facias.
>> Primo, erant 'iens ut facere exemplar example2.c.
Igitur prima ansa intus,
erant 'iens addere additional pro loop.
Ita propter (int j = 0, n = strlen (argv [i]),
Ergo multo quam nunc habet et rationem,
; J <n; j + +)
Sumamus cuique loci typis
intus est current argumentum per usura printf.
Sic, printf ("argv [% d], ad repraesentandum index current argumentum,
tunc [% d] iterum, ad repraesentandum current characterem current argumentum,
est% C, qualis nunc est argumentum.
Postremo ansam praebent extremo indicis printf ego
tunc index interioris loop.
>> Et ultimum argumentum ad printf est actualis character ex ratione dummodo
iussu linea.
Nunc quia actum meum strlen adipisci longitudine nervus nervo,
Oportet me et adde string.h library ad verticem nostra includit.
Unde ad hoc enim ibo, et sub stdio.h, facturi sumus
# Includunt .
>> Sic, lets compilare, et currunt et providere eam actualis argumentum.
>> Et ut videamus jam caritas uniuscuiusque loci prorsus argumentum.
Sic ut 'eam. Im 'Christopher Bartholomeus hoc est CS50.
[CS50.TV]