C Jak přistoupit k jednomu charu? Pointery – C / C++ – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu
Reklama
Reklama

C Jak přistoupit k jednomu charu? Pointery – C / C++ – Fórum – Programujte.comC Jak přistoupit k jednomu charu? Pointery – C / C++ – Fórum – Programujte.com

 

Hledá se programátor! Plat 1 800 € + bonusy (firma Boxmol.com)
Vladimír
~ Anonymní uživatel
31 příspěvků
22. 12. 2013   #1
-
0
-

Dobrý večer,

potřeboval bych poradit.

Z příkazové řádky zadávám třeba číslo 1234

a potřebuji toto číslo rozdělit po jednotlivých charech a poté převést na int, jenže né a né přijít na to jak. převést celý string není problém, ale po jednom už jo.

Jak se dostanu k jednotlivým charům, abych je mohl postupně uložit do proměnné typu char a následně použít atoi()?

Použivám klasické argv a pomocí 

argv[0]++;

se posunu o jeden char dále, ale pořád přistupuji k celému stringu a né k jednotlivým charům

Mnohokrát děkuji

Nahlásit jako SPAM
IP: 89.103.252.–
Reklama
Reklama
KIIV+42
God of flame
22. 12. 2013   #2
-
0
-

v argv[0] bych spis cekal nazev programu...

pristupovat k pismenu muzes pomoci dereference *(pointer) nebo indexu pointer[index]...

Nahlásit jako SPAM
IP: 93.91.152.–
Program vždy dělá to co naprogramujete, ne to co chcete...
Vladimír
~ Anonymní uživatel
31 příspěvků
22. 12. 2013   #3
-
0
-

zapoměl jsem dodat, že jsem předtím provedl argv++ :-), takže proto tam není název programu.

no já když provedu

int cislo;

cislo = atoi(argv[0]);

tak cislo = 1234

a já potřebuji aby 

cislo = 1

Nahlásit jako SPAM
IP: 89.103.252.–
KIIV+42
God of flame
22. 12. 2013   #4
-
0
-

atoi si s  argv[0][0] nebo *(argv[0]) nebude mozna umet poradit... ale kdyz od toho odectes hodnotu znaku '0' tak ti vyjde 0-9 ...  ale chce to kontrolovat i jiny znaky

Nahlásit jako SPAM
IP: 93.91.152.–
Program vždy dělá to co naprogramujete, ne to co chcete...
Vladimír
~ Anonymní uživatel
31 příspěvků
22. 12. 2013   #5
-
0
-

V tom je asi ten problém, děkuji mnohokrát, zapoměl jsem ze jednotlivá čísla, se dají jednoduše konvertovat na int. Takže jsem to vyřešil pomocí

argv[0][0] - '0'

Ještě jednou děkuji

Nahlásit jako SPAM
IP: 89.103.252.–
Matěj Andrle+1
Grafoman
23. 12. 2013   #6
-
0
-

#5 Vladimír
argv[0][indexCharu] je ten char, co chceš - nechápu, proč konvertovat do int... A jak by se tu daly použít pointery fakt nechápu - pointer by naopak ukazoval - takže by se to pole ještě prohloubilo...

Nahlásit jako SPAM
IP: 78.136.161.–
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, 62 hostů

Podobná vlákna

Konstanta charu... — založil Maty

Konstruktor z charu — založil Spectrik

Porovnání charů — založil Ivo

Moderátoři diskuze

 

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