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 19:55 | Zajímavý projekt

    Průkopnická firma FingerWorks kolem roku 2000 vyvinula vícedotykové trackpady s gesty a klávesnice jako TouchStream LP. V roce 2005 ji koupil Apple, výrobu těchto produktů ukončil a dotykové technologie využil při vývoji iPhone. Multiplatformní projekt Apple Magic TouchstreamLP nyní implementuje funkcionalitu TouchStream LP na současném Apple Magic Trackpad, resp. jejich dvojici. Diskuze k vydání probíhá na Redditu.

    |🇵🇸 | Komentářů: 0
    včera 18:22 | Nová verze

    Byla vydána nová verze 10.3 sady aplikací pro SSH komunikaci OpenSSH. Přináší řadu bezpečnostních oprav, vylepšení funkcí a oprav chyb.

    Ladislav Hagara | Komentářů: 0
    včera 15:11 | Zajímavý software

    Cloudflare představil open source redakční systém EmDash. Jedná se o moderní náhradu WordPressu, která řeší bezpečnost pluginů. Administrátorské rozhraní lze vyzkoušet na EmDash Playground.

    Ladislav Hagara | Komentářů: 2
    včera 14:00 | Komunita

    Bratislava OpenCamp 2026 zverejnil program a spustil registráciu. Štvrtý ročník komunitnej konferencie o otvorených technológiách prinesie 19 prednášok na rôzne technologické témy. Konferencia sa uskutoční v sobotu 25. apríla 2026 v priestoroch FIIT STU v Bratislave.

    Ladislav Hagara | Komentářů: 0
    včera 13:44 | Humor

    Na iVysílání lze zhlédnout všechny díly kultovního sci-fi seriálu Červený trpaslík.

    Ladislav Hagara | Komentářů: 5
    včera 04:44 | IT novinky

    Společnost Valve aktualizovala přehled o hardwarovém a softwarovém vybavení uživatelů služby Steam. Podíl uživatelů Linuxu dosáhl v březnu 5,33 % (Windows -4,28 %, OSX +1,19 %, Linux +3,10 %). Nejčastěji používané linuxové distribuce jsou Arch Linux, Linux Mint a Ubuntu. Při výběru jenom Linuxu vede SteamOS Holo s 24,48 %. Procesor AMD používá 67,48 % hráčů na Linuxu.

    Ladislav Hagara | Komentářů: 3
    1.4. 23:22 | IT novinky

    Společnost Apple slaví padesáté narozeniny. Založena byla 1. dubna 1976.

    Ladislav Hagara | Komentářů: 2
    1.4. 22:33 | Nová verze

    FreeTube, desktopový klient pro YouTube využívající lokální API, byl vydán ve verzi 0.24.0. Toto velké opravné vydání implementuje SABR (Server-Based Adaptive Bit Rate), což řeší část nedávných problémů s načítáním videí z YouTube, a aktualizuje základní komponenty jako Electron nebo přehrávač Shaka Player.

    |🇵🇸 | Komentářů: 2
    1.4. 16:33 | Humor

    Je tu opět apríl. O víkendu zmizel kamion s 12 tunami tyčinek KitKat. Firmy to využívají k aprílovým žertům. Groupon má super akci. Koupíte 1 tyčinku a dostanete 100 zdarma. Ryanair si přelepil letadla. Šéf Outlooku se ptá, proč mají v baráku 14 beden tyčinek KitKat (𝕏). Prusa Research představuje Prusa Pro ACU a vysvětluje proč přílišné sušení škodí vaším filamentům. Telefon Sony Xperia má miliónnásobný zoom (𝕏). PC.net představil Super Ultrabox 2600 se zajímavými parametry. Další aprílové novinky například na April Fools' Day On The Web.

    Ladislav Hagara | Komentářů: 2
    1.4. 13:22 | IT novinky

    Společnost OpenAI, která stojí za chatovacím robotem s umělou inteligencí (AI) ChatGPT, získala od investorů 122 miliard USD (2,6 bilionu Kč). Hodnota společnosti tak dosáhla 852 miliard dolarů (více než 18 bilionů Kč). Nejnovější kolo investování se stalo největší, jaké zatím firma uskutečnila, a peníze mají posílit ambiciózní plány rozšíření výpočetní kapacity, datových center a nábor talentů.

    Ladislav Hagara | Komentářů: 17
    Které desktopové prostředí na Linuxu používáte?
     (15%)
     (7%)
     (1%)
     (12%)
     (29%)
     (3%)
     (5%)
     (1%)
     (14%)
     (24%)
    Celkem 1207 hlasů
     Komentářů: 29, poslední 31.3. 11:17
    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: 2046×
    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á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.