abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 11:33 | Nová verze

    OpenTTD (Wikipedie), tj. open source klon počítačové hry Transport Tycoon Deluxe, byl vydán v nové stabilní verzi 15.0. Přehled novinek v seznamu změn a také na YouTube. OpenTTD lze instalovat také ze Steamu.

    Ladislav Hagara | Komentářů: 0
    dnes 11:11 | Nová verze

    Správce oken IceWM byl vydán ve verzi 4.0.0, která např. vylepšuje navigaci v přepínání velkého množství otevřených oken.

    |🇵🇸 | Komentářů: 1
    dnes 01:33 | Zajímavý projekt

    Od 1. ledna 2026 jsou všechny publikace ACM (Association for Computing Machinery) a související materiály přístupné v její digitální knihovně. V rámci této změny je nyní digitální knihovna ACM nabízena ve dvou verzích: v základní verzi zdarma, která poskytuje otevřený přístup ke všem publikovaným výzkumům ACM, a v prémiové zpoplatněné verzi, která nabízí další služby a nástroje 'určené pro hlubší analýzu, objevování a organizační využití'.

    NUKE GAZA! 🎆 | Komentářů: 3
    včera 16:44 | IT novinky

    S koncem roku 2025 skončila standardní podpora operačního systému HP-UX (Hewlett Packard Unix).

    Ladislav Hagara | Komentářů: 11
    včera 14:33 | Nová verze

    K 1. lednu 2026 končí 70leté omezení majetkových autorských práv děl autorů zesnulých v roce 1955, viz 2026 in public domain. V americkém prostředí vstupují do public domain díla z roku 1930, viz Public Domain Day.

    |🇵🇸 | Komentářů: 2
    31.12. 15:00 | Nová verze

    Všem vše nejlepší do nového roku 2026.

    Ladislav Hagara | Komentářů: 10
    31.12. 13:33 | Zajímavý software

    Crown je multiplatformní open source herní engine. Zdrojové kódy jsou k dispozici na GitHubu pod licencí MIT a GPLv3+. Byla vydána nová verze 0.60. Vyzkoušet lze online demo.

    Ladislav Hagara | Komentářů: 1
    31.12. 12:11 | Zajímavý článek

    Daniel Stenberg na svém blogu informuje, že po strncpy() byla ze zdrojových kódů curlu odstraněna také všechna volání funkce strcpy(). Funkci strcpy() nahradili vlastní funkcí curlx_strcopy().

    Ladislav Hagara | Komentářů: 6
    31.12. 03:00 | Nová verze

    Byla vydána nová verze 25.12.30 svobodného multiplatformního video editoru Shotcut (Wikipedie) postaveného nad multimediálním frameworkem MLT. Shotcut je vedle zdrojových kódů k dispozici také ve formátech AppImage, Flatpak a Snap.

    Ladislav Hagara | Komentářů: 0
    30.12. 18:55 | IT novinky

    Společnost Valve publikovala přehled To nej roku 2025 ve službě Steam aneb ohlédnutí za nejprodávanějšími, nejhranějšími a dalšími nej hrami roku 2025.

    Ladislav Hagara | Komentářů: 0
    Které desktopové prostředí na Linuxu používáte?
     (0%)
     (0%)
     (0%)
     (30%)
     (40%)
     (15%)
     (0%)
     (5%)
     (15%)
     (15%)
    Celkem 20 hlasů
     Komentářů: 1, poslední dnes 06:15
    Rozcestník

    Dotaz: getchar v programu?

    8.1.2020 21:20 Dooyer
    getchar v programu?
    Přečteno: 452×
    case 1:
    	getchar();
    	printf("Zadejte obsah nebo objem:");
    		gets(vyber);
    		if (!strcmp(vyber, "obsah"))	{	
    		printf("Napis delku stranu: ");
    		scanf("%f",&num1);
    			if (num1 > 0){
       			double result = pow(num1,3);
     			printf("Vysledek: %lf\n", result);
         	   	 }
        		else{
    			printf("Chybne zadana strana");
    		}
    	}
    	
    		else if (!strcmp(vyber, "objem")){	
    		printf("\nNapis delku stranu: ");
    		scanf("%f%f%f",&num1,&num2,&num3);
           		if (num1 > 0 && num2 >0 && num3 >0){
           		double result = num1*num2*num3;
           		 printf("Vysledek: %lf\n", result);
               		 }
    			else{
    			printf("Chybne zadana strana");
    				}
    			}
    		else{
    		printf("Chybne zadany vyber!");}
    	break;
    Chci se zeptat proč bez getchar(); to nefunguje a po vypsání ,,Zadejte obsah nebo objem,, vyhodí chybný výběr? přece to má napsat ,,Zadejte obsah nebo objem,, a nechat mě to něco napsat a pak načíst do řetězce pomocí gets ne?

    PS: je to jen část kodu zbytek sem neposlal zajímá mě jen tohle chyba je jen tu

    Odpovědi

    8.1.2020 21:39 rastos | skóre: 63 | blog: rastos
    Rozbalit Rozbalit vše Re: getchar v programu?
    V buffri pre stdin niečo je a ten getchar() to odtiaľ vyberie.

    Tipol by som, že to niečo, je znak nového riadku, z nejakého predchádzajúceho vstupu. Resp. niečo čo predchádzajúce čítanie vstupu neprečítalo.

    Navrhujem zistiť, čo ten getchar() vráti.
    Jendа avatar 8.1.2020 21:48 Jendа | skóre: 78 | blog: Jenda | JO70FB
    Rozbalit Rozbalit vše Re: getchar v programu?
    Tak si obsah vyber vypiš, ne? A to buď pomocí printf, nebo „jako profík“ se nauč používat debugger, nastavt breakpoint za to gets a nech si tu proměnnou zobrazit.
    NUKE GAZA! 🎆 avatar 9.1.2020 17:03 NUKE GAZA! 🎆 | skóre: 37 | blog: Grétin blogísek | 🇮🇱==❤️ , 🇵🇸==💩 , 🇪🇺==☭
    Rozbalit Rozbalit vše Re: getchar v programu?

    taky zdroják jako profík formátuj se ty závorky nedaj skoro číst jak jsou jako pořád jněkde jinde. jsem to u sebe lechce přeformátovala ;D

    a jestli chceš bejt jednou jako bohatej profík tak používej misto tabulátoru mezery hele ;D

    jakej používáš editor nebo IDE na psaní zdrojáčků??

    case 1:
        getchar();
        printf("Zadejte obsah nebo objem:");
        gets ( vyber );
        if ( !strcmp ( vyber, "obsah" ) )
        {
            printf ( "Napis delku stranu: " );
            scanf ( "%f",&num1 );
            if ( num1 > 0 ) {
                double result = pow ( num1,3 );
                printf ( "Vysledek: %lf\n", result );
            } else {
                printf ( "Chybne zadana strana" );
            }
        }
        else if (!strcmp(vyber, "objem"))
        {
            printf ( "\nNapis delku stranu: " );
            scanf ( "%f%f%f",&num1,&num2,&num3 );
            if ( num1 > 0 && num2 >0 && num3 >0 ) {
                double result = num1*num2*num3;
                printf ( "Vysledek: %lf\n", result );
            } else {
                printf ( "Chybne zadana strana" );
            }
        }
        else
        {
        printf("Chybne zadany vyber!");
        }
        break;
    
    Jendа avatar 9.1.2020 21:09 Jendа | skóre: 78 | blog: Jenda | JO70FB
    Rozbalit Rozbalit vše Re: getchar v programu?
    a jestli chceš bejt jednou jako bohatej profík tak používej misto tabulátoru mezery hele ;D
    Já používám mezery proto, protože se mi zaboha nepodařilo donutit vim, aby do terminálu vypisoval taby (a to ještě s šířkou 2) -- konvertuje to na mezery, takže když to potom zkopíruju a pastnu, tak jsou to mezery a pak mám mix tabů a mezer. Když je to někde striktní, tak před commitem mezery za taby nahrazuju.
    10.1.2020 08:42 rastos | skóre: 63 | blog: rastos
    Rozbalit Rozbalit vše Re: getchar v programu?
    a jestli chceš bejt jednou jako bohatej profík tak používej misto tabulátoru mezery
    To ma ranilo :-(
    NUKE GAZA! 🎆 avatar 11.1.2020 12:24 NUKE GAZA! 🎆 | skóre: 37 | blog: Grétin blogísek | 🇮🇱==❤️ , 🇵🇸==💩 , 🇪🇺==☭
    Rozbalit Rozbalit vše Re: getchar v programu?

    se asi neschodnem jestli jsou jako lepší mezery nebo taby :D :D si ale myslim že se snad schodnem žeby se to nemělo zbytečně moc míchat vzlášť když ten zdrojáček jako chceme někde ukazovat ;D

    Jendа avatar 11.1.2020 12:30 Jendа | skóre: 78 | blog: Jenda | JO70FB
    Rozbalit Rozbalit vše Re: getchar v programu?
    No každopádně jsem článek ukázal v práci a všichni přešli na mezery.
    NUKE GAZA! 🎆 avatar 11.1.2020 12:46 NUKE GAZA! 🎆 | skóre: 37 | blog: Grétin blogísek | 🇮🇱==❤️ , 🇵🇸==💩 , 🇪🇺==☭
    Rozbalit Rozbalit vše Re: getchar v programu?
    8.1.2020 22:02 debian+
    Rozbalit Rozbalit vše Re: getchar v programu?
    Zalezi od programu pred. Spravne nema tam byt getchar.

    A miesto gets() pouzi fgets().

    Založit nové vláknoNahoru

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.