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í
×
    včera 23:44 | Nová verze

    Byla vydána nová verze 2.56.0 distribuovaného systému správy verzí Git. Přispělo 104 vývojářů, z toho 39 nových. Přehled novinek v příspěvku na blogu GitHubu a v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    včera 21:22 | Bezpečnostní upozornění

    Hackerská skupina ShinyHunters oznámila průnik do informačních systémů FBI, prostřednictvím zero-day zranitelnosti v platformě Oracle PeopleSoft, kterou úřad využívá mimo jiné pro náborový portál FBIJobs.gov. Útočníci tvrdí, že získali až 3 TB dat o současných i bývalých zaměstnancích a uchazečích o práci. Jako důkaz zveřejnili vzorek přibližně 5 000 záznamů obsahující jména, adresy, telefonní čísla, data narození, čísla

    … více »
    AfD 💙 | Komentářů: 1
    včera 21:11 | Zajímavý článek

    Doba kompilace linuxového jádra se díky rychlejšímu hardwaru a optimalizacím kbuildu snižuje k deseti sekundám. Nejnovější patche Lorenza Stoakse (vznikají i s pomocí SI) zkrátily na testovacím stroji dobu sestavení z dlouhých 22 vteřin na pouhých 15, a to bez použití RAMdisku. Testovací systém tvořily dva procesory AMD EPYC 9575F (oba dohromady poskytují celkem 128 jader a 256 vláken), čtyřiadvacet 64GB DDR5-6400 paměťových modulů a

    … více »
    AfD 💙 | Komentářů: 5
    včera 01:33 | Komunita

    Před rokem a půl vývojáři postmarketOS informovali, že pro projekt hledají nové jméno. Včera bylo oznámeno: postmarketOS se nově jmenuje Nura.

    Ladislav Hagara | Komentářů: 5
    27.9. 13:44 | Zajímavý projekt

    Hra Factorio dorazila na Printables. Hned teď si můžete stáhnout 65 různých modelů a nechat celou mimozemskou planetu oživnout na svém stole.

    Ladislav Hagara | Komentářů: 13
    26.9. 19:22 | Nová verze

    GNU Project Debugger aneb GDB byl vydán ve verzi 18.1. Podrobný přehled novinek v souboru NEWS.

    Ladislav Hagara | Komentářů: 0
    25.9. 23:33 | Humor

    Prezident USA Donald Trump během svého projevu na valném shromáždění OSN 22. září 2026 prohlásil, že umělá inteligence 'bude dále oficiálně nazývána superinteligencí', zkráceně SI. Svůj návrh zdůvodnil takto: 'Použití slova artificial činí inteligenci falešnou. Ona falešná není, ve skutečnosti je úžasná'. Zároveň ve svém proslovu prohlásil, že Spojené státy kategoricky odmítají jakékoliv pokusy o vytvoření 'globalistického

    … více »
    AfD 💙 | Komentářů: 26
    25.9. 23:22 | Nová verze

    Čínská technologická firma Xiaomi představila novou verzi 2.6 svého modelu MiMo, váhy modelů MiMo‑V2.6‑Pro‑RL a MiMo‑V2.6‑Flash‑RL jsou dostupné na HuggingFace pod licencí MIT. Výkonnější varianta Pro má přes bilion parametrů, z toho 42 miliard aktivních, úspornější Flash 309 miliard parametrů, z nichž se při generování aktivuje přibližně 15 miliard. Oba modely mají délku kontextového okna milion tokenů. Tyto MoE modely zvládají

    … více »
    AfD 💙 | Komentářů: 0
    25.9. 03:33 | Komunita

    Proběhl Snapdragon Summit 2026. Společnost Qualcomm se mimo jiné pochlubila během Linuxu na čipech Snapdragon X2. Zatím pouze v ranní verzi vhodné pro vývojáře linuxových distribucí a přispěvatele do jádra Linux.

    Ladislav Hagara | Komentářů: 0
    24.9. 21:11 | Nová verze

    Byla vydána nová verze 2.0 klienta F-Droid určeného pro instalaci bezplatných a otevřených mobilních aplikací do Androidu ze softwarového repozitáře F-Droid (Wikipedie). Jedná se o alternativu k Google Play.

    Ladislav Hagara | Komentářů: 7
    Které desktopové prostředí na Linuxu používáte?
     (9%)
     (7%)
     (4%)
     (21%)
     (29%)
     (8%)
     (5%)
     (2%)
     (14%)
     (20%)
    Celkem 2745 hlasů
     Komentářů: 31, poslední 13.8. 00:27
    Rozcestník
    Štítky: není přiřazen žádný štítek

    Dotaz: [C] program na prevod dec -> hex

    martin() avatar 11.9.2009 20:34 martin() | skóre: 6 | Prievidza / Bratislava
    [C] program na prevod dec -> hex
    Přečteno: 2309×
    Dobry den, snazim sa napisat program, ktory ako vstup zoberie integer a na obrazovku vypise hex. Zatial som vyprodukoval toto:
    #include <stdio.h>
    
    char *string_hexnum(int number)
    {
    	char mask[] = "0123456789ABCDEF";
    	char str[12];
    	int i = 10;
    
    	str[11] = '\0';
    
    	if (number < 0){
    		puts("ERROR: number is negative\n");
    		return 0;
    	}
    
    	if (number == 0){
    		str[i--] = '0';
    	} else {
    		while (number != 0){
    			str[i--] = mask[number % 16];
    			number /= 16;
    		}
    	}
    	str[i--] = 'x';
    	str[i] = '0';
    
    	return str+i;
    }
    
    
    void print_hexnum(int number)
    {
    	char* pnt;
    	puts("test");
    	pnt = string_hexnum(number);
    	puts(pnt);
    	puts("test");
    }
    
    
    int main(void)
    {
    	print_hexnum(888);
    
    	return 0;
    }
    
    Problemom je, ze sa to cislo nevypise, zostane prazdny riadok. Nechcem na to pouzit ziadnu funkciu z kniznice. Ked som to debuggoval, tak som videl, ze do pamete sa vsetko uklada ako ma. pnt ukazuje na prvy znak retazca - '0'.

    Dakujem.
    Hovor múdro, nepriateľ načúva ! -- S. J. Lec --

    Řešení dotazu:


    Odpovědi

    Řešení 1× (martin() (tazatel))
    11.9.2009 20:51 ams
    Rozbalit Rozbalit vše Re: [C] program na prevod dec -> hex

    Chyba je v tom, ze vracite odkaz na lokalni promennou str. Bud pouzijte malloc/free, anebo zmente deklaraci char str[12] na static char str[12]. Pak to ovsem nebude fungovat v multithread programech, ale to, tusim, ani nechcete :)

    Řešení 1× (martin() (tazatel))
    11.9.2009 20:53 Vojtěch Horký | skóre: 39 | blog: Vojtův zápisník | Praha
    Rozbalit Rozbalit vše Re: [C] program na prevod dec -> hex
    return str+i;
    Nemůžete vracet ukazatel na lokální proměnnou - jakékoliv další volání funkce zásobník přepíše. V lepším případě to nebude fungovat, v horším případě to upadne.
    I am always ready to learn although I do not always like to be taught. (W. Churchill)
    martin() avatar 11.9.2009 21:06 martin() | skóre: 6 | Prievidza / Bratislava
    Rozbalit Rozbalit vše Re: [C] program na prevod dec -> hex
    Dakujem za reakcie, zas som sa naucil nieco nove ;-)

    Eclipse mi vyhodil warning, ze vraciam adresu lokalnej premennej, ale uspesne som to ignoroval.

    Este raz dakujem.
    Hovor múdro, nepriateľ načúva ! -- S. J. Lec --
    Pavel Stárek avatar 11.9.2009 21:32 Pavel Stárek | skóre: 43 | blog: Tady bloguju já :-) | Kolín
    Rozbalit Rozbalit vše Re: [C] program na prevod dec -> hex
    To byla nějaká školní úloha se zákazem používat knihovní funkce a funkce pro formátování výstupu? Mě z toho zadání vyšlo toto:
    #include <stdio.h>
    #include <string.h>
    
    int main(int argc, char *argv[]) {
      unsigned long iCislo;
      
      if (argc > 1) {
        iCislo = atoi(argv[1]);
        printf("Cislo %s je hexa: 0x%X\n", argv[1], iCislo);
        return(0);
      }
      printf("Malo parametru!\n");
      return(1);
    } 
    Kdo chce, hledá způsob; kdo nechce, hledá důvod.
    martin() avatar 11.9.2009 22:00 martin() | skóre: 6 | Prievidza / Bratislava
    Rozbalit Rozbalit vše Re: [C] program na prevod dec -> hex
    Nie. Povedal som si, ze naprogramujem funkciu, ktora bude vypisovat cisla v hex. So skolou to nemalo nic spolocne.
    Hovor múdro, nepriateľ načúva ! -- S. J. Lec --
    14.9.2009 13:49 l4m4
    Rozbalit Rozbalit vše Re: [C] program na prevod dec -> hex
    Rozhodl-li ses takovou funkci naprogramovat, tak ji naprogramuj a nenech ji za sebe programovat jiné.

    Pokud takovou funkci pouze potřebuješ, tak bych vzhledem k tomu, že vstup decimálních čísel a výpis hexadecimálních jsou operace, u kterých lze čekat, že už je někdo naprogramoval před dvaceti lety a dal do standardní knihovny, čekal spíš otázku na to, kterou knihovní funkci k tomu použít než jak to naprogramovat.
    15.9.2009 08:27 dark
    Rozbalit Rozbalit vše Re: [C] program na prevod dec -> hex

    Sak ji naprogramoval a nefungovala mu, tak se zeptal, nic spatneho na tom nevidim.

    15.9.2009 09:35 Ash | skóre: 53
    Rozbalit Rozbalit vše Re: [C] program na prevod dec -> hex
    Však l4m4 jen shrnul a potvrdil co bylo už v zásadě řečeno.
    14.9.2009 12:05 dark
    Rozbalit Rozbalit vše Re: [C] program na prevod dec -> hex

    Nevim, jestli je 2x rozumne pouzit %X na 'unsigned long'.

    14.9.2009 13:52 l4m4
    Rozbalit Rozbalit vše Re: [C] program na prevod dec -> hex
    Když už používáš ten long jako typ dat, tak používej odpovídající funkce...
    printf("%lx\n", atol(argv[1]));
             ^         ^
    
    A return není funkce.
    Pavel Stárek avatar 15.9.2009 16:49 Pavel Stárek | skóre: 43 | blog: Tady bloguju já :-) | Kolín
    Rozbalit Rozbalit vše Re: [C] program na prevod dec -> hex
    Nojo, nojo, to byl jen takový rychlý pokus. Spíš pro ukázání, že takovéto funkce není třeba programovat, neboli netřeba vynalézat kolo. :-) Já céčko moc nepoužívám, já raději Python.
    Kdo chce, hledá způsob; kdo nechce, hledá důvod.

    Založit nové vlákno • Nahoru

    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.