Ukonceni fce scanf – C / C++ – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Ukonceni fce scanf – C / C++ – Fórum – Programujte.comUkonceni fce scanf – C / C++ – Fórum – Programujte.com

 

Toto vlákno bylo označeno za vyřešené.
Spuštěný nový filmový web Filmožrouti.cz — vše o Avengers, Pacific Rim, Thor, Star Wars…
canda220
Duch
14. 1. 2018   #1
-
0
-

Ahoj,

       potreboval bych ukoncit funkci scanf, kdyz po mezere nebude nasledovat dalsi cislo. Napr. tato rada: 
8 25 11 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 26 11 11 je mensi nez velikost pole a proto scanf bude cekat na dalsi vstupy. Cela rada se bude zadavat na jednom radku.

Predem dekuji.

bool read = true;

while (read) {
		if (1 == scanf("%i", &input)) {
			add_counter(input);
		}
		else {
			read = false;
		}
	}
Nahlásit jako SPAM
IP: 194.228.13.–
gna
~ Anonymní uživatel
480 příspěvků
14. 1. 2018   #2
-
0
-

Nebylo by to lepší naopak? Když po čísle není mezera, tak bylo poslední?

Nahlásit jako SPAM
IP: 213.211.51.–
canda220
Duch
14. 1. 2018   #3
-
0
-

#2 gna
Ano, tak jsem to mel namysli.

Nahlásit jako SPAM
IP: 194.228.13.–
gna
~ Anonymní uživatel
480 příspěvků
14. 1. 2018   #4
-
0
-

   

int input;

while (scanf("%d", &input) == 1) {
	add_counter(input);

	if (getchar() != ' ')
		break;
}
Nahlásit jako SPAM
IP: 213.211.51.–
15. 1. 2018   #5
-
0
-

zkusil bych tohle: 

int input;
char znak;

while ( scanf("%d%c", &input) ) {
	add_counter(input);
}

mělo by to i přečíst CR LF, který se na konci řádku často vyskytuje.

hu

Nahlásit jako SPAM
IP: 195.178.67.–
canda220
Duch
15. 1. 2018   #6
-
0
-

Dekuji, vse funguje.

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

Přidej příspěvek

×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, 126 hostů

Podobná vlákna

Skok z fce do fce — založil Fcelik

Scanf - C — založil jakub

Scanf v C - segmentace — založil tap9701

Scanf ve funkci — založil Rostislav

Moderátoři diskuze

 

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