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

V pátek byl představen projekt postmarketOS (GitHub). Cílem tohoto projektu je open source operační systém pro chytré telefony vycházející z optimalizovaného a nakonfigurovaného Alpine Linuxu s vlastními balíčky. Operační systém postmarketOS by měl podporovat 10letý životní cyklus chytrých telefonů.

Ladislav Hagara | Komentářů: 4
včera 23:44 | Nová verze

Byla vydána verze 0.4.5 svobodného operačního systému ReactOS. Z novinek lze zdůraznit podporu kancelářského balíku Microsoft Office 2010. Podrobnosti v ChangeLogu.

Ladislav Hagara | Komentářů: 2
včera 23:11 | Komunita

Linphone 4.0 pro desktop přichází. Vývojáři tohoto multiplatformního open source VoIP a SIP klienta postupně představují nové vlastnosti. Verze 4.0 bude postavena na Qt [reddit].

Ladislav Hagara | Komentářů: 0
27.5. 22:22 | Komunita

Dle plánu byl měl Debian 9 s kódovým názvem Stretch vyjít v sobotu 17. června. Po celém světě se začínají plánovat Release Parties. Oznámeno bylo vydání čtvrté RC (release candidate) verze instalátoru pro Debian 9 Stretch.

Ladislav Hagara | Komentářů: 5
26.5. 22:22 | Komunita

V Norimberku probíhá do neděle 28. května openSUSE Conference 2017. Na programu je celá řada zajímavých přednášek. Sledovat je lze online. K dispozici jsou také videozáznamy (YouTube) již proběhnuvších přednášek. Dění lze sledovat na Twitteru.

Ladislav Hagara | Komentářů: 0
26.5. 11:33 | IT novinky

Red Hat kupuje společnost Codenvy stojící za stejnojmenným webovým (cloudovým) integrovaným vývojovým prostředím (WIDE) postaveném na Eclipse Che.

Ladislav Hagara | Komentářů: 0
26.5. 08:55 | Nová verze

V listopadu 2014 byl představen fork Debianu bez systemd pojmenovaný Devuan. Po dva a půl roce jeho vývojáři oznámili vydání první stabilní verze 1.0. Jedná se o verzi s dlouhodobou podporou (LTS) a její kódové jméno je Jessie, podle planetky s katalogovým číslem 10 464.

Ladislav Hagara | Komentářů: 15
25.5. 20:22 | Zajímavý článek

Nadace Raspberry Pi vydala již osmapadesáté číslo (pdf) stostránkového anglicky psaného časopisu MagPi věnovanému Raspberry Pi a projektům postaveným na tomto jednodeskovém počítači a druhé číslo (pdf) časopisu Hello World primárně určeného pro učitele informatiky a výpočetní techniky.

Ladislav Hagara | Komentářů: 0
25.5. 19:55 | Humor

Portál Stack Overflow informuje na svém blogu, že pomohl ukončit editor Vim už více než milionu vývojářů. V loňském roce například hledal odpověď na otázku Jak ukončit editor Vim v průměru 1 z 20 000 návštěvníků.

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

Po pěti měsících od vydání verze 3.5.0 byla vydána nová stabilní verze 3.6.0, tj. první z nové řady 3.6, minimalistické linuxové distribuce zaměřené na bezpečnost Alpine Linux (Wikipedie). Z novinek lze zmínit například podporu dvou nových 64bitových platforem little-endian POWER machines (ppc64le) a IBM z Systems (s390x) nebo nové balíčky Rust 1.17.0, Cargo 0.18.0, GHC 8.0.2 a Julia 0.5.2.

Ladislav Hagara | Komentářů: 0
Chystáte se pořídit CPU AMD Ryzen?
 (6%)
 (33%)
 (1%)
 (8%)
 (44%)
 (9%)
Celkem 632 hlasů
 Komentářů: 62, poslední 19.5. 01:57
    Rozcestník

    Dotaz: Jak přiřadit statické pole v gcc?

    21.2.2008 11:57 dustin | skóre: 61 | blog: dustin
    Jak přiřadit statické pole v gcc?
    Přečteno: 336×
    Zdravím, při úpravě jaderného modulu alsy jsem narazil na problém s přiřazením statického pole.

    Původní kód obsahuje statické pole stringů vzorkovacích frekvencí definované ve funkci, která využívá jednotlivé položky tohoto pole.
    static const char * const texts_1724[] = {
    		"8000",		/* 0: 6 */
    		...................
    		"192000",	/* 14: 14 */
    		"IEC958 Input",	/* 15: -- */
    	};
    
    Protože některé karty podporují jen některé z těchto frekvencí, potřebuji kód zobecnit, aby se nepracovalo rovnou s tímto statickým polem, ale s polem příslušným dané kartě.

    Tedy jsem definici tohoto pole přesunul z funkce na hlavní úroveň, do struktury karty přidal novou položku a v inicializaci struktury se snažím jí toto pole přiřadit.
    struct snd_ice1712 {
    ............
    	struct ice1712_rates_info {
    		....
    		char * * texts;			/* list of rate strings */
    	} rates_info;
    }
    
    Přiřazení v inicializaci provádím
    ice->rates_info.texts = texts_1724;
    Bohužel toto hodí při kompilaci warning: assignment from incompatible pointer type. Zkoušel sem všechny možné varianty definice položky texts, různě odstraňovat consty u definice statického pole, ale nedokázal jsem warning (někdy rovnou error) odstranit. Má znalost C pro gcc je poměrně chatrná. Velice děkuji za radu či doporučení.

    Odpovědi

    21.2.2008 12:05 Martin
    Rozbalit Rozbalit vše Re: Jak přiřadit statické pole v gcc?
    puvodni denlarace je const char * const texts_1724[] konstantni ukazatel na konstanti pole
    Vy pouzivate nekonstantni ukazatel na nekonstantni string char **texts. Neni ta hlaska zpusobena prave tim?
    21.2.2008 12:19 dustin | skóre: 61 | blog: dustin
    Rozbalit Rozbalit vše Re: Jak přiřadit statické pole v gcc?
    Zkoušel jsem:

    const char * texts[]; vede na error: invalid use of flexible array member char * texts[]; vede na error: invalid use of flexible array member

    const char ** texts; vede na warning: assignment discards qualifiers from pointer target type
    21.2.2008 12:35 mity | skóre: 6 | Praha
    Rozbalit Rozbalit vše Re: Jak přiřadit statické pole v gcc?
    Promenna texts_1724 je konstantni pole konstantnich stringu. (vsimnete si dvojnasobneho vyskytu slova "const").

    Musite tedy deklarovat konstantni pointer na konstantni string:

    static const char * const texts_1724[] = { "8000", /* 0: 6 */ ................... "192000", /* 14: 14 */ "IEC958 Input", /* 15: -- */ };

    static const char* const* ptr; /* <-- !!! */

    static void my_func(void) { ... ptr = texts_1724; ... }
    21.2.2008 13:09 dustin | skóre: 61 | blog: dustin
    Rozbalit Rozbalit vše Re: Jak přiřadit statické pole v gcc?
    Děkuji. Ta proměnná text je položkou structu, kde static nezafungoval (error: expected specifier-qualifier-list before 'static'). Nicméně řešení

    const char* const* texts;

    skouslo gcc bez připomínek. Ještě jednou všem děkuji.
    21.2.2008 14:33 podlesh | skóre: 37 | Praha
    Rozbalit Rozbalit vše Re: Jak přiřadit statické pole v gcc?
    Já bych doporučil používat typedef. Žonglování s hvězdičkami je spíš pro vztek.
    21.2.2008 14:38 R
    Rozbalit Rozbalit vše Re: Jak přiřadit statické pole v gcc?
    typedef sa nema pouzivat v driveroch.
    21.2.2008 14:52 finn | skóre: 42 | blog: finnlandia | 49° 44´/13° 22´
    Rozbalit Rozbalit vše Re: Jak přiřadit statické pole v gcc?
    Proč?
    Užívej dne – možná je tvůj poslední.
    21.2.2008 15:02 R
    Rozbalit Rozbalit vše Re: Jak přiřadit statické pole v gcc?
    Documentation/CodingStyle
    21.2.2008 14:55 dustin | skóre: 61 | blog: dustin
    Rozbalit Rozbalit vše Re: Jak přiřadit statické pole v gcc?
    Děkuji za doporučení. Přeci jenom jde o úpravu stávajícího kódu a nechci dělat více změn, než je nutné.

    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.