Argumenty příkazové řádky – C / C++ – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Argumenty příkazové řádky – C / C++ – Fórum – Programujte.comArgumenty příkazové řádky – C / C++ – Fórum – Programujte.com

 

Ondřej
~ Anonymní uživatel
156 příspěvků
4. 1. 2011   #1
-
0
-

Pěkný den,
mám problém se čtením argumentů z příkazové řádky. Argumentem na příkazové řádce by měl být regex. Měl bych umožnit vkládání ve stylu naze.exe "(a|b)*c" ale i bez těch uvozovek... A tam je problém... pokud do příkazové řadky napíšu znak | tak se to dost zlobí. Je možný to nějak potlačit? Aby to bylo možné zadávat bez těch uvozovek... Nějak to asi jít musí, když to po nás ve škole chtějí, ale já jsem nikde (ani v přednáškách) nenašel.

Díky za každou radu

Nahlásit jako SPAM
IP: 81.201.60.–
liborb
~ Redaktor
+18
Guru
4. 1. 2011   #2
-
0
-

Na potlačení jsou právě ty uvozovky. To není žádná ostuda je tam mít, protože stejně tě budou zlobit i jiné znaky jako třeba mezera.

Nahlásit jako SPAM
IP: 195.189.143.–
Ondřej
~ Anonymní uživatel
156 příspěvků
4. 1. 2011   #3
-
0
-

To liborb : Jasný... právě ty mezery by způsobily "rozdělení" na více argumentů... Ale já mám právě v zadání: umožněte jak vstup s uvozovkama, tak "hustý" zápis bez mezer a uvozovek...

Nahlásit jako SPAM
IP: 81.201.60.–
liborb
~ Redaktor
+18
Guru
4. 1. 2011   #4
-
0
-

Můžeš zkusit zpětný lomítko, ale to asi nebude ono resp. pohledat, jak se to zapisuje - nějaké počteníčko o cmd.

Nahlásit jako SPAM
IP: 195.189.143.–
m->29+6
Super člen
4. 1. 2011   #5
-
0
-

Asi si si to zle vysvetlil, ak je to podobné:

"S ohledem na to, že muže její zápis obsahovat mezery, napište program tak, aby akceptoval jak zápis rovnice obklopený uvozovkami, tak bez nich, tj. aby bylo možné program spouštet jak zadáním príkazu equsolv.exe x+x^2=-1, tak príkazem equsolv.exe "x + x^2 = -1"."

Ide, len o to, aby ti ten program zobral aj rovnicu keď nie je zmrštená, čiže preskakoval biele miesta ;-) Ale inak sa používa to spätné lomítko pred každým znakom.

Nahlásit jako SPAM
IP: 83.240.51.–
Ondřej
~ Anonymní uživatel
156 příspěvků
4. 1. 2011   #6
-
0
-

To m->29 : To nějak nechápu... Mě je jasný jak je to s těmi mezerami, ale já pro regulární výraz můžu používat i jiné znaky než +,-,*,/ ... a právě znak | mi dělá problémy... pokud má jít program spouštět i příkazem regfota.exe a|b , tak si myslím, že tam bude spešl fígl... Nebo že to třeba vůbec nejde...

Nahlásit jako SPAM
IP: 81.201.60.–
m->29+6
Super člen
4. 1. 2011   #7
-
0
-

Ty si vôbec nepochopil zadanie!! Tam ide len o to, aby ti program správne sparsoval aj regulárny výraz s medzerami aj bez nich. Bez medzier sa zapisuje ako a|b a s medzerami ako "a | b". To, že sú tam tie uvodzovky ti môže byť jedno, lebo tie zadáva ten kto to bude testovať a hodnotiť. Ak ich tam nedá tak je to jeho vec, ale ak dá tak to má jednoducho zožrať aj toto: "(a | b)* . . ." Ide o to, aby to tie medzery nebralo do úvahy a chovalo sa to korektne aj s nimi. Tie uvodzovky sú záležitosť shellu a či je s nimi alebo bez nich tak program sa o tom nedozvie. Spýtaj sa na to opravujúceho a ten ti povie to isté podľa mňa.

Nahlásit jako SPAM
IP: 83.240.51.–
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 51 hostů

Moderátoři diskuze

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý