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 22:33 | Zajímavý software

    Hru Warhammer: Vermintide 2 (ProtonDB) lze na Steamu získat zdarma napořád, když aktivaci provedete do pondělí 24. listopadu.

    Ladislav Hagara | Komentářů: 1
    včera 19:33 | Nová verze Ladislav Hagara | Komentářů: 0
    včera 13:11 | IT novinky

    Evropská komise schválila český plán na poskytnutí státní pomoci v objemu 450 milionů eur (téměř 11 miliard Kč) na rozšíření výroby amerického producenta polovodičů onsemi v Rožnově pod Radhoštěm. Komise o tom informovala v dnešní tiskové zprávě. Společnost onsemi by podle ní do nového závodu v Rožnově pod Radhoštěm měla investovat 1,64 miliardy eur (téměř 40 miliard Kč).

    Ladislav Hagara | Komentářů: 8
    včera 06:11 | Komunita

    Microsoft v příspěvku na svém blogu věnovaném open source oznámil, že textové adventury Zork I, Zork II a Zork III (Wikipedie) jsou oficiálně open source pod licencí MIT.

    Ladislav Hagara | Komentářů: 0
    včera 05:55 | Komunita

    První prosincový týden proběhne SUSE Hack Week 25. Zaměstnanci SUSE mohou věnovat svůj pracovní čas libovolným open source projektům, například přidání AI agenta do Bugzilly, implementaci SSH v programovacím jazyce Zig nebo portaci klasických her na Linux. Připojit se může kdokoli.

    Ladislav Hagara | Komentářů: 2
    20.11. 22:00 | IT novinky

    Google oznámil, že Quick Share na Androidu funguje s AirDropem na iOS. Zatím na telefonech Pixel 10. Uživatelé tak mohou snadno přenášet soubory z telefonů s Androidem na iPhony a obráceně.

    Ladislav Hagara | Komentářů: 2
    20.11. 21:22 | Nová verze

    Byla vydána nová verze 8.5 (8.5.0) skriptovacího jazyka PHP používaného zejména k vývoji dynamických webových stránek. Přináší řadu novinek a vylepšení (URI Extension, Pipe Operator, Clone With, …). Vydána byla také příručka pro přechod z předchozích verzí.

    Ladislav Hagara | Komentářů: 0
    20.11. 12:44 | IT novinky

    Evropská komise zahájila tři vyšetřování týkající se cloudových platforem Amazon Web Services (AWS) a Microsoft Azure. Evropská exekutiva, která plní také funkci unijního antimonopolního orgánu, chce mimo jiné určit, zda jsou americké společnosti Microsoft a Amazon v cloudových službách takzvanými gatekeepery, tedy hráči, kteří významně ovlivňují provoz internetu a musí dle nařízení o digitálních trzích (DMA) na společném trhu

    … více »
    Ladislav Hagara | Komentářů: 4
    20.11. 12:33 | IT novinky

    Společnost Meta Platforms vyhrála ostře sledovaný spor o akvizici sítě pro sdílení fotografií Instagram a komunikační aplikace WhatsApp. Podle amerického soudu firma jejich převzetím neporušila antimonopolní zákon, protože si tak nemonopolizovala trh sociálních sítí. Žalobu na Metu podala před pěti lety americká Federální obchodní komise (FTC). FTC argumentovala, že Meta, tehdy známá jako Facebook, koupila tyto dvě společnosti v letech 2012 a 2014 proto, aby s nimi nemusela soutěžit.

    Ladislav Hagara | Komentářů: 0
    20.11. 05:11 | IT novinky

    Home Assistant včera představil svůj nejnovější oficiální hardware: Home Assistant Connect ZBT-2 pro připojení zařízení na sítích Zigbee nebo Thread.

    Ladislav Hagara | Komentářů: 5
    Jaké řešení používáte k vývoji / práci?
     (35%)
     (46%)
     (19%)
     (18%)
     (22%)
     (15%)
     (23%)
     (16%)
     (17%)
    Celkem 387 hlasů
     Komentářů: 17, poslední 19.11. 21:57
    Rozcestník

    Dotaz: Jak napíšu znak "newline" do include souboru

    9.5.2015 07:05 Tomáš
    Jak napíšu znak "newline" do include souboru
    Přečteno: 382×
    Dokumentace k preprocesoru na stránkách GCC říká, že když použiju variantu #include <jméno>, tak nemůžu použít znak > v názvu souboru, ale < použít můžu. Pak že ve variantě #include "jméno" nemůžu použít znak ". A taky, že to neinterpretuje backslash sekvence jiné než newline-escape, (né \n, ale \<opravdový newline>). Já tu mám soubor, co má newline v názvu souboru, a nevím, jak ho includovat. Pan učitel tvrdí, že to jde a je to domácí úkol, ale už jsem zkusil snad všechno, ale nedaří se.

    Odpovědi

    9.5.2015 08:12 Kit | skóre: 46 | Brno
    Rozbalit Rozbalit vše Re: Jak napíšu znak "newline" do include souboru
    Zkus \r\n
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    9.5.2015 12:31 Tomáš
    Rozbalit Rozbalit vše Re: Jak napíšu znak "newline" do include souboru
    Ono se zdá, že to vůbec escape sekvence neinterpretuje.
    //1 - bez newline
    #include "homework.h"
    //2 - newline v řetězci, hlásí, že chybí ukončovací ",
    //    druhý řádek to nebere jako součást include directivy
    #include "homework
    .h"
    //3 - toto akorát udělá escape skutečného newline znaku v rámci
    //    preprocesoru, výsledek je "homework.h"
    #include "homework\
    .h"
    //4 - \n není bráno jako escape sekvence, ale jako součást názvu
    #include "homework\n.h"
    //5 - opět \n je součástí názvu
    #define HOMEWORK "homework\n.h"
    #include HOMEWORK
    
    stativ avatar 9.5.2015 14:43 stativ | skóre: 54 | blog: SlaNé roury
    Rozbalit Rozbalit vše Re: Jak napíšu znak "newline" do include souboru

    Jestli učitel zadává takové domácí úkoly, tak je to pitomec.

    Použití \ v názvu souboru pro #include je implementačně závislé, tudíž to, že escape sekvence pomocí \ nefungují je zcela správně. Záviset na takovém chování může jedině blázen. Mimochodem, tohle omezení nejde obejít ani pomocí trigraphu ??/, protože trigraphy se interpretují jako první.

    Standard sice povoluje použití jakéhokoli znaku z basic source character set, takže nejspíš i newline (až na tebou jmenované výjimky), ale okamžitě narazíš na problém, jak rozlišit normální odřádkování a znak nového řádku ve jménu souboru. To by se teoreticky dalo obejít tím, že bys ve zdrojácích odřádkovával pomocí DOS newlines (CR LF) a unixové odřádkování (LF) bys použil jen ve jménu souboru (nebo naopak). Ale zpracování je zase závislé na implementaci – clang a gcc obojí zpracuje jako normální odřádkování. Ani u jednoho se mi nepodařilo najít nějaký přepínač, kterým by se dal způsob odřádkování vynutit.

    Ať sežeru elfa i s chlupama!!! ljirkovsky.wordpress.com stativ.tk
    pavlix avatar 9.5.2015 17:48 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: Jak napíšu znak "newline" do include souboru
    Jestli učitel zadává takové domácí úkoly, tak je to pitomec.
    Dobrý kus kreténa to musí být.
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    9.5.2015 17:08 Kolemjdoucí
    Rozbalit Rozbalit vše Re: Jak napíšu znak "newline" do include souboru
    Chlapy a co soubor, který se jmenuje '*' ? Ten mi taky nejde sourcnout.
    9.5.2015 17:40 Tomáš
    Rozbalit Rozbalit vše Re: Jak napíšu znak "newline" do include souboru
    S #include "*" mi to funguje.
    9.5.2015 17:37 .
    Rozbalit Rozbalit vše Re: Jak napíšu znak "newline" do include souboru
    Kde se to tam říká?
    9.5.2015 17:45 Tomáš
    Rozbalit Rozbalit vše Re: Jak napíšu znak "newline" do include souboru
    tady jsem to našel. Vidím, že je to pro nějaké staré GCC, ale je to tam.
    10.5.2015 10:19 .
    Rozbalit Rozbalit vše Re: Jak napíšu znak "newline" do include souboru
    Já to nějak nevidím.
    9.5.2015 18:54 rastos | skóre: 63 | blog: rastos
    Rozbalit Rozbalit vše Re: Jak napíšu znak "newline" do include souboru
    Ťažko sa hádať s učiteľom, ale ak to pomôže, tak ma zarátaj medzi tých, ktorí si myslia, že učiteľ chce blbosť.

    Čo tak takto:
    $ touch main.c
    $ echo "int foo();" > "foo
    > bar.h"
    $ cpp -include "foo
    bar.h" main.c 
    # 1 "main.c"
    # 1 "<built-in>"
    # 1 "<command-line>"
    # 1 "/usr/include/stdc-predef.h" 1 3 4
    # 1 "<command-line>" 2
    # 1 "./foo
    bar.h" 1
    int foo();
    # 1 "<command-line>" 2
    # 1 "main.c"
    
    $ cpp --version
    cpp (GCC) 4.8.3
    ...
    

    ?

    Btw, aká je to škola?
    9.5.2015 19:04 rastos | skóre: 63 | blog: rastos
    Rozbalit Rozbalit vše Re: Jak napíšu znak "newline" do include souboru
    ANSI C standard (ISO/IEC 9899:1990) hovorí
    6.4.7 Header names
    Syntax
     header-name:
             < h-char-sequence >
             " q-char-sequence "
    
     h-char-sequence:
             h-char
             h-char-sequence h-char
    
     h-char:
             any member of the source character set except the new-line character and >
    
    q-char-sequence:
             q-char
             q-char-sequence q-char
    
    q-char:
             any member of the source character set except the new-line character and "
    
    
    Máte vôbec s učiteľom ujasnené, s akým kompilátorom to má chodiť?

    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.