• úvod
  • témata
  • události
  • tržiště
  • diskuze
  • nástěnka
  • přihlásit
    registrace
    ztracené heslo?
    XCHAOSANSI C/C99 (specifikace), GNU C (gcc, glibc), Tiny C (tcc) a POSIX - ne nutně C++,g++,libstdc++ nebo Win32 API
    /* Toto je klub především pro lidi, pro které je programování jednou z mnoha massive multiplayer online počítačových her, které lze hrát.
        V tomto klubu hrozí sémantická hereze a nezdravě vysoký obsah syntaktického cukru. Nevhodné pro algoritmické diabetiky.
        Od účastníků debaty se předpokládá automaticky přístup k instalovanému GNU C: sudo apt-get install build-essential
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    C (programovací jazyk)#C99 Heslo na české Wikipedii
    Jazyk C - Základy praktického programování V Praze 2oo7 pro SSPŠ Tomáš Harvie Mudruňka a kolektiv - jak si programování v C představuje většina lidí
    http://stevenkobes.com/ctest.html C Programming Puzzlers - nepouštějte se do flamewars v tomhle klubu, pokud neuhodnete aspoň polovinu správně!
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    http://en.wikipedia.org/wiki/C99 C99 is a modern dialect of the C programming language.
    http://cprogramminglanguage.net/ C programming language
    http://cprogramminglanguage.net/c-programming-language-tutorial.aspx C programming language - úvod
    http://en.wikipedia.org/wiki/Criticism_of_the_C_programming_language C makes it easy to shoot yourself in the foot. (ještě že ne do hlavy...)
    http://en.wikipedia.org/wiki/C_preprocessor
    http://gcc.gnu.org/onlinedocs/gcc/Variadic-Macros.html C99 makra s proměnným počtem argumentů - __VA_ARGS__
    http://gcc.gnu.org/onlinedocs/gcc/ GNU C Compiler
    http://gcc.gnu.org/onlinedocs/gcc-4.2.2/gcc/Optimize-Options.html
    http://bellard.org/tcc/ Tiny C Compiler - prý C99 compliant (min. umí __VA_ARGS__) - vhodný pro skriptování v C - umí #!/usr/bin/tcc -run
    http://en.wikipedia.org/wiki/International_Obfuscated_C_Code_Contest - pokud jste neviděli tohle, tak jste ještě neviděli opravdu nečitelný C zdroják
    http://bellard.org/otcc/ Obfuscated Tiny C Compiler - z tohohle vtípku vznikl Tiny C compiler
    http://en.wikipedia.org/wiki/ANSI_C Jak se střelit do nohy standardizovaným způsobem.
    http://eli-project.sourceforge.net/c_html/c.html ANSI C Specification
    http://www.lysator.liu.se/c/ Různý ANSI C bordel
    http://www.cs.rit.edu/~ats/books/ooc.pdf Object Oriented Programming with ANSI-C - a pak že to nejde
    http://en.wikipedia.org/wiki/Longjmp co jsou to setjmp()/longjmp() knihovní funkce (pro všechny, podle kterých to bez C++ try { } catch() ... nejde)
    http://groups.google.com/group/comp.lang.c++.moderated/browse_thread/thread/dcdc710c27f47c72 C neumí správně počítat (?)
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    http://www.fastcgi.com/ FastCGI is simple because it is actually CGI with only a few extensions.
    http://www.metalshell.com/source_code/18/Mysql_Select.html How to do a simple connection and select with mysql
    http://xmlsoft.org/ The XML C parser and toolkit of Gnome
    http://curl.haxx.se/libcurl/ libcurl - the multiprotocol file transfer library
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    https://dev.arachne.cz/svn/cll1h SVN/Trac jazyka C<<1 (user-friendly nadstavba nad ANSI C99 - ve stylu JQuery vs. JavaScript)
    Benchmark iterace a serializace stringů v různých jazycích vs. v C
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
        moderátor se velice zhruba řídí zvyklostmi moderace, která kdysi platila v řadě konferencí sítě FidoNet ... C != 0xdead */
    rozbalit záhlaví
    WILD_A
    WILD_A --- ---
    XCHAOS: Ja se s tou kritikou prave ztotoznuju, to, ze starej init system potreboval zrychlit a treba umoznit lip vyjadrovat zavisloti apod to je mimo diskusi, ale jak rikas binarni logovani je nepochopitelny a taky to, ze ted na vsechno volam system-ctl vzdyt i o ty core dumpy si musim rikat, mozna to jde nejak vypnout at je mam klasicky.
    I kdyz popravde vlastne mne to zaclo frustrovat hlavne kvuli tomu, ze je vsechno jinak a nic neni jako driv :)
    XCHAOS
    XCHAOS --- ---
    WILD_A: no, že je to naprogramovaný v C by ani tak nevadilo, to cítili potřebu všichni, nějak to zrychlit. problém je, že je to úmyslně naprogramované aby to běhalo jen pod Linuxem,to by mi jako linuxákovi teda taky nemuselo vadit... ale to binární logování nechápu ani já. a celkově ta kritika vypadá rozumná (http server uvnitř initu? to nestačí ten, co je v kernelu? :-), hlavně teda init slinkovaný dynamicky s dalšími knihovnami - hmm, no teda nevím

    zas na tom notebooku nějak nepociťuju, že by to přinášelo nějaké problémy, takže nevím. pro lidi, pro které byl důležitý pocit (podotýkám, že to byl právě jen pocit), že chápou, jak věci fungujou "uvnitř"... no, zase je možné, že to rozbilo nějaké letité triky, jak něco schovat ve změnit init scriptů nebo jak udělat nějaký démon fakticky neukončitelný, unix je popravdě hrozná jungle.

    fakticky je možné, že ze stejného důvodu, z jakého to nějaké lidi nasralo, to získalo podporu v komunitě Debianu ... těžko říct. já to mám na desktopu, na rozinstalovaném mailserveru se unstable instalace kousla, takže tam bude stable (ze kterého se ale upgrade na systém ze systemd jeví téměř nemožně)

    no, aspoň si generace co vyrostla na tradičním Linuxu zažije něco, jako když nám sebrali MS-DOS a nutili nás přejít buď na okna (nebo v mém případě právě na Linux) - jinými slovy, je to šikana adminů, což jsou ale právě lidi, kteří jsou běžně ze své pozice sami zvyklí někoho šikanovat, takže se jim ta karma trochu vrátí
    WILD_A
    WILD_A --- ---
    XCHAOS: systemd uz i na debianu? Sakra, za chvili nezbude nez vsechno presaltovat na *BSD
    XCHAOS
    XCHAOS --- ---
    Zajímavý, jak systemd všichni nenáviděj, a přitom ho přijaly skoro všechny distribuce...

    http://news.slashdot.org/...237/lennart-poettering-open-source-community-quite-a-sick-place-to-be-in
    http://en.wikipedia.org/wiki/Systemd
    http://boycottsystemd.org/
    http://uselessd.darknedgy.net/

    (zrovna tuhle jsem si na notebook, kde jsem mrtvý hdd vyměnil za ssd disk, nainstaloval Debian Jessie, a koukám - fakticky je tam systemd, hmmm)
    XCHAOS
    XCHAOS --- ---
    "trigraphy" v C? připadám si jako softwareový archeolog!
    http://www.itworld.com/...ead-scratchers-10-confounding-programming-language-features-434442#slide4v
    http://notabug.com/2002/coherent/man/trigraph.html
    (v tomhle jazyce doufám nikdo nepsal ovladače k jaderným ponorkám.. že ne??!)
    XCHAOS
    XCHAOS --- ---
    (teda myslím spíš komentáře pod tou odpovědí)
    XCHAOS
    XCHAOS --- ---
    nejvýše obodovaná odpověď překvapila i mě -a to jsem hodně velkej C-kazisvět...
    Strangest language feature - Stack Overflow
    http://stackoverflow.com/questions/1995113/strangest-language-feature
    XCHAOS
    XCHAOS --- ---
    XCHAOS
    XCHAOS --- ---
    Top 50 Programming Quotes of All Time | TechSource
    http://www.junauza.com/2010/12/top-50-programming-quotes-of-all-time.html
    XCHAOS
    XCHAOS --- ---
    i my co máme rádi "jenom C" si občas rádi přečteme, co si ostatní myslí o C++
    C++ and the STL 12 Years Later: What Do You Think Now? - Slashdot
    http://ask.slashdot.org/story/14/04/30/1344224/c-and-the-stl-12-years-later-what-do-you-think-now

    zejména pobavil komentář (či je to signatura?): Everyone knows 40% of C++. Unfortunately, it's never the same 40%.
    TYCHOVRAHE
    TYCHOVRAHE --- ---
    XCHAOS: já to hrál o víkendu a už mám splněno:)
    XCHAOS
    XCHAOS --- ---
    Level 12 solution saved at ... :-) tak vážení trollové, to jsem zvědav, kdo to dohraje dál :-)
    XCHAOS
    XCHAOS --- ---
    (jinak k té gamese... Level 6 vyřešen, sedmičku radši nestuduju, musím i něco udělat :-)
    XCHAOS
    XCHAOS --- ---
    XCHAOS
    XCHAOS --- ---
    hra je sice v javascriptu a ne v céčku, ale pokládám ji za instruktážní z hlediska pochopení, jakou třídu problémů programátoři v C řeší, pokud jde o bezpečnost. enjoy :-)
    Untrusted - a user javascript adventure game
    http://alexnisnevich.github.io/untrusted/
    FEDY
    FEDY --- ---
    zdravim ...

    nedelate nekdo s GNU Radio ?
    GIOMIKY
    GIOMIKY --- ---
    ANT_39: Skoro bych rekl, ze je to spis nejaky jednoucelovy anti-crackersky zakodovani knihovny. Ale to uz jsem zase asi off-topic. Sorry.
    GIOMIKY
    GIOMIKY --- ---
    ANT_39: Diky za tip, ale ja mam pocit, ze se da ta ochrana resit nejak jednodusseji. Kdyz jsem se dival na zavadec v terminalu, tak tam zadny velky harakiri s knihovnou neni. Je tam jenom prachsprosty import knihovny a potom volani funkce.
    ANT_39
    ANT_39 --- ---
    (Vlastne by ani PIE byt nemusela, jen by se linkovala pro jinou adresu, nez je obvykly, aby nebyla kolize mezi tim desifrovacim wrapperem a tim hlavnim programem. No nic, dost bylo monologu, psat se to nechystam :) )
    ANT_39
    ANT_39 --- ---
    (Urcite jsou tam detaily, ktery by bylo potreba vyresit: napriklad dost pravdepodobne bys musel ten rozbaleny program relokovat pro to cilovy umisteni. Ale mozna ne, kdyby zasifrovana binarka byla PIE, tak by mohla tomu mmapu zadat presnou adresu.)
    ANT_39
    ANT_39 --- ---
    GIOMIKY: mmapem si alokujes blok pameti, rozkomprimujes/rozsifrujes do ni nejaky staticky data, mprotectem nastavis +x, a pak return ((int (*)(int, char**)) 0xadresa) (argc, argv); 0xadresa je konstanta programu, nastavi se tou komprimacni utilitou. Staticky data se zkomprimovanym programem taky. Rozhodne to jde napsat do znacne miry prenositelne v C.
    Kliknutím sem můžete změnit nastavení reklam