Jak přečíst celé souvětí – C / C++ – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Jak přečíst celé souvětí – C / C++ – Fórum – Programujte.comJak přečíst celé souvětí – C / C++ – Fórum – Programujte.com

 

RePRO0
Super člen
18. 4. 2010   #1
-
0
-

Zdravím. Mám takovej problém. Funkci scanf nemůžu použít, protože to vypíše jenom to, co je po white space. No a když použiji tento příklad, co jsem se pokoušel, tak to hned vypíše "naráz" Zadejte autora knihy: Zadejte nazev knihy:

printf(" Zadejte autora knihy: ");
strcpy(knihy[i]->autor, gets(autor));

printf(" Zadejte nazev knihy: ");
strcpy(knihy[i]->jmeno, gets(nazevKnihy));

Poradíte mi někdo? Potřebuju zadat třeba: Jaroslav Hasek, to se ulozi do knihy[i]->autor a potom třeba Osudy dobrého vojáka Švejka za první světové války a to se uloží do knihy[i]->jmeno. Díky moc za všechny rady.

Nahlásit jako SPAM
IP: 213.226.228.–
Software: C; C++; C#; Pascal; Delphi; Java Webdesign: PHP; MySQL; CSS; jQuery; Ajax; Javascript; OOP
yetty_001
~ Redaktor
+5
Super člen
18. 4. 2010   #2
-
0
-

Editoval yetty_001: Sorry, mělo to patřit jinam...
ale když už jsem něco napsal, proč vůbec používáš strcpy? Samotné gets nestačí? A mimochodem, je lepší použít funkci fgets, nastavit jí počet znaků k přečtení a za vstup dát stdin.

Nahlásit jako SPAM
IP: 94.74.221.–
KIIV
~ Moderátor
+43
God of flame
18. 4. 2010   #3
-
0
-

vetsinou se pouziva: char pole[1025]; fgets(pole, 1024, stdin);

Nahlásit jako SPAM
IP: 80.250.1.–
Program vždy dělá to co naprogramujete, ne to co chcete...
RePRO0
Super člen
18. 4. 2010   #4
-
0
-

To yetty_001 : Víš, k čemu slouží strcpy? :))

Nahlásit jako SPAM
IP: 83.240.104.–
Software: C; C++; C#; Pascal; Delphi; Java Webdesign: PHP; MySQL; CSS; jQuery; Ajax; Javascript; OOP
RePRO0
Super člen
18. 4. 2010   #5
-
0
-

To KIIV : KIIVE, pořád to dělá to samé. Na jeden řádek to naráz vypíše: Zadejte autora knihy: Zadejte nazev knihy:

a čeká...

	char autor[1025];

char nazevKnihy[1025];

printf(" Zadejte autora knihy: ");
fgets(autor, 1024, stdin);
strcpy(knihy[i]->autor, autor);

printf(" Zadejte nazev knihy: ");
fgets(nazevKnihy, 1024, stdin);
strcpy(knihy[i]->jmeno, nazevKnihy);

Nahlásit jako SPAM
IP: 83.240.104.–
Software: C; C++; C#; Pascal; Delphi; Java Webdesign: PHP; MySQL; CSS; jQuery; Ajax; Javascript; OOP
yetty_001
~ Redaktor
+5
Super člen
18. 4. 2010   #6
-
0
-

To RePRO : V podstatě ano :) Jako ochrana před přetečením je to imho nesmysl. A jiný význam mne zde nenapadá. Právě proto jsem se ptal...

P.S.: mě te kód funguje...

Nahlásit jako SPAM
IP: 94.74.221.–
KIIV
~ Moderátor
+43
God of flame
18. 4. 2010   #7
-
0
-

kdo vi kolik znaku uz mas na fronte... a hlavne enteru

Nahlásit jako SPAM
IP: 80.250.1.–
Program vždy dělá to co naprogramujete, ne to co chcete...
RePRO0
Super člen
18. 4. 2010   #8
-
0
-

Zkusím fflush a nebo řešení možná scanf("%20[^\n]", str) :)

Nahlásit jako SPAM
IP: 83.240.104.–
Software: C; C++; C#; Pascal; Delphi; Java Webdesign: PHP; MySQL; CSS; jQuery; Ajax; Javascript; OOP
RePRO0
Super člen
18. 4. 2010   #9
-
0
-

Hm, tak ani jedno. Tak to už fakt pak nevím. ;-(

Nahlásit jako SPAM
IP: 83.240.104.–
Software: C; C++; C#; Pascal; Delphi; Java Webdesign: PHP; MySQL; CSS; jQuery; Ajax; Javascript; OOP
KIIV
~ Moderátor
+43
God of flame
19. 4. 2010   #10
-
0
-

to uz hod komplet kod..

Nahlásit jako SPAM
IP: 80.250.1.–
Program vždy dělá to co naprogramujete, ne to co chcete...
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, 8 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ý