• ú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í
    XCHAOS
    XCHAOS --- ---
    KEYMASTER: ale co dekompilace té virtuální mašiny? :-)
    KEYMASTER
    KEYMASTER --- ---
    1) Navrhni si vlastní formát virtuální mašiny
    2) Napiš si interpreter a překladač do téhle virtuální mašiny
    3) Zkompiluj svůj program do téhle virtuální mašiny
    4) ???
    5) Profit!
    DAVIDOWITCH
    DAVIDOWITCH --- ---
    JANFROG: Souhlas. Skype bejval dost neprustrelnej, ne?
    JANFROG
    JANFROG --- ---
    GIOMIKY: Da, ale je to zbytecny. CPU to zaheslovane nesezere, takze pri behu to musi byt v ciste podobe. A dumpnout to z pameti procesu je fakt trivka.
    Muzes delat to co navrhuje
    DAVIDOWITCH: ale uprimne, ja bych to neresil. Herni studia a velke firmy tim travi mrte casu a zatim nic neodolalo dele nez tyden...
    DAVIDOWITCH
    DAVIDOWITCH --- ---
    GIOMIKY: Z logiky veci musi takova zaheslovana binarka obsahovat klic i algoritmus k rozheslovani, jen jde o to jak moc slozity je ho z toho dostat.
    Pak prichazej na radu longjumpy do dat, selfmodifying kod apod.
    GIOMIKY
    GIOMIKY --- ---
    JANFROG: Diky za odpoved. Mel jsem na mysli techniky, ktere znemozni i reverse IDOu. Myslel jsem, ze treba binarka nebo knihovna jde nejak zkomprimovat nebo jinak zakodovat, aby se zabranilo reverse engineeringu.
    JANFROG
    JANFROG --- ---
    No to zalezi co mas na mysli "dekompilaci". Vzdycky z toho pujde dostat machine kod a pokud mas solidni debugger/disassembler (jako treba IDA Pro), da se z toho leccos vycist. Pokud "dekompilaci" myslis ziskani puvodniho zdojaku v C/C++, tak uz je to horsi a v zasade to moc nejde a nemusis nic delat. Pokud to napises v nejakem dostatene high-level jazyce (treba Scheme nebo Smalltalk), tak puvodni kod z toho uz nedostane nikdo (byt to neni nemozne)
    GIOMIKY
    GIOMIKY --- ---
    Cau, mam dotaz. Rad bych naprogramoval dll s nejakejma vypocetnima funcema. Potreboval bych to dll ale ochranit proti dekompilaci. Jak na to? Predpokladam pouziti windows compatible compilatoru a dll bude mit nekolik vyexportovanejch volani.
    XCHAOS
    XCHAOS --- ---
    některý jsem neznal...no přiznávám, je to trochu offtopic. ale pořád dofám, že se tu s nějakým interpreterem nějakého esoterického programovacího jazyka, napsaným v C, nakonec setkám...
    10 Most Bizarre Programming Languages Ever Created | Nettuts+
    http://net.tutsplus.com/articles/roundups-articles/top-10-most-bizarre-programming-languages/
    XCHAOS
    XCHAOS --- ---
    Troll! -- programming Language
    http://www.omnimaga.org/index.php?topic=7509.0
    XCHAOS
    XCHAOS --- ---
    Source Code For 22nd IOCCC Winners Has Been Released - Slashdot
    http://developers.slashdot.org/...01/04/2123236/source-code-for-22nd-ioccc-winners-has-been-released
    Previous IOCCC Winners
    http://ioccc.org/years.html#2013
    Who won the 22nd IOCCC
    http://ioccc.org/2013/whowon.html
    XCHAOS
    XCHAOS --- ---
    XCHAOS
    XCHAOS --- ---
    » Logické programování v C - Zmatení (programovacích) jazyků
    http://babel.blog.root.cz/2013/08/17/logicke-programovani-v-c/
    XCHAOS
    XCHAOS --- ---
    ugh... nejen, že $ je platný název makra (mind-boggling možnost dát tomuhle makru JQuery-like sílu... např. #define $(OBJ) (OBJ->_value) či tak něco)... ale celé Cello vypadá jako by někdo fakt měl tu trpělivost udělat to, co jsem chtěl udělat já s C>>1 makry... no, inu knihovna, no...

    Cello • High Level Programming C
    http://libcello.org/documentation/memory
    XCHAOS
    XCHAOS --- ---
    DANIELSOFT: makro se může jmenovat $? wow...
    DANIELSOFT
    DANIELSOFT --- ---
    dneska někdo na Okounu nalinkoval zajímavou knihovnu, tak se o to podělím:

    Cello • High Level Programming C
    http://libcello.org/
    XCHAOS
    XCHAOS --- ---
    Trocha jarního optimismu, do tohohle diskuzního klubu :-)

    Damien Katz: Follow up to "The Unreasonable Effectiveness of C"
    http://damienkatz.net/2013/01/follow_up_to_the_unreasonable.html
    I've written a byte code VM in C++ that's been deployed on 100 million+ desktops and 100's of thousands of servers. I used C++ inheritance, templates, exceptions, custom memory allocation and a bunch of other features I thought were very cool at the time. Now I feel bad for the people who have to maintain it.
    ...
    My view of C has changed over the years, and I used to think the older guys who loved C were just behind the times. Now I see why many of them felt that way, they saw what is traded away when you stray from the simple and effective.


    Damien Katz: The Unreasonable Effectiveness of C
    http://damienkatz.net/2013/01/the_unreasonable_effectiveness_of_c.html
    C is a fantastic high level language. I'll repeat that. C is a fantastic high level language. It's not as high level as Java or C#, and certainly no where near as high level as Erlang, Python, or Javascript. But it's as high level as C++, and far far simpler. Sure C++ offers more abstraction, but it doesn't present a high level of abstraction away from C. With C++ you still have to know everything you knew in C, plus a bunch of other ridiculous shit.
    XCHAOS
    XCHAOS --- ---
    XCHAOS
    XCHAOS --- ---
    DAVIDOWITCH: neřekl jsem, že je to offtopic, jsem rád, že se tu řeší aspoň něco...
    DAVIDOWITCH
    DAVIDOWITCH --- ---
    XCHAOS: Mozna bys mel upravit jmeno klubu, aby tam nebylo to C++, protoze "ne nutne C++" znamena ze se tu resi taky/prevazne Ccko, ne ze se tu neresi C++, plusplus to vypadne pri vyhledavani.
    XCHAOS
    XCHAOS --- ---
    MARVI: ačkoliv mi nevadí, že se ptáš v tomhle klubu, tak podotýkám , že je tu na NYXu separátní C++ klub... ačkoliv se s id REDGUY většinou hádám, tak dnes s ním vyjímečně souhlasím, že třeba C++ knihovna, kterou evidentně používáš, mě jako C/C99 programátorovi, zvyklého na POSIX API (GNU libc), neříká vůbec nic.
    Kliknutím sem můžete změnit nastavení reklam