• ú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í
    REDGUY
    REDGUY --- ---
    XCHAOS: tam prakticky cokoliv se napíše v jakémkoliv pořadí, tak je to nějak validní. - vzdyt jsem psal ze vim ze ho neumis, nemusis to potvrzovat 8)


    XCHAOS: jestli je vhodné něco označovat za nástroj pro začátečníky - v tom pripade to nedelej. Psal jsi ze delas nastroj pro lidi co s programovanim zacinaji. Takze to uz neni pravda?

    takže obrátit se cíleně na DIY subkulturu a amatéry by mohlo mít možná význam - a jen tak pro kontrolu, proc myslis ze DIY subkultura a amateri by meli mit o tvuj vytvor zajem? To neni recnicka otazka. Co jim nabidne lepsiho, nez rekneme C++?

    10 reagovalo na sebemenší pitomost jenom proto, že je dané téma hluboce NEZAJÍMÁ. - ale fuj. To ze si o tom co navrhujes myslim ze je to pitomost neznamena ze me to nezajima nebo dokonce nebavi 8)
    XCHAOS
    XCHAOS --- ---
    REDGUY: nemyslím si, že v Ruby jde neumět...tam prakticky cokoliv se napíše v jakémkoliv pořadí, tak je to nějak validní. otázka je, jestli je začátečníky dobré to učit... nevím :-)

    nevím skutečně, jestli je vhodné něco označovat za nástroj pro začátečníky - možná se skutečně zaměřím spíš na to zdůrazňování toho amatérismu. profesionálně se tvářících nástrojů a toolkitů je totiž už na trhu (i na "free trhu") strašné množství, takže obrátit se cíleně na DIY subkulturu a amatéry by mohlo mít možná význam.

    k ostatnímu se tu asi nemá cenu vyjadřovat. ale opravdu neznám jiný klub na NYXu, který by 50 lidí sledovalo a 10 reagovalo na sebemenší pitomost jenom proto, že je dané téma hluboce NEZAJÍMÁ. skutečně... lidi mají hodně zvláštní zájmy...
    _BENNY
    _BENNY --- ---
    XCHAOS: nevyresi. problem urcite neni v tom, ze C++ podporuje pretezovani operatoru (ktere ti k tvemu bastleni chybi, ale pouzivat proto par jeho ficur stejne nezacnes).
    XCHAOS
    XCHAOS --- ---
    DAVIDOWITCH: no dobře, no :)

    _BENNY: nevím... pozoruju, zkoumám, učím se. (aspoň se necpu do těch splepých uliček, ve kterých už je tlačenice, že jo... :-)
    _BENNY
    _BENNY --- ---
    XCHAOS: no ale k takovemu psani potrebujes naprosto presne znat vnitrnosti systemu, abys vedel co a jak kde optimalizovat. nebo si myslis, ze prechod od libovolneho jazyka k jazyku C s tvou nadstavbou vsechny problemy s rozezranosti aplikaci vyresi?
    REDGUY
    REDGUY --- ---
    XCHAOS: že jako pro začátečníky je "lepší než Ruby" prakticky cokoliv - vzhledem k tomu ze predpokladam ze Ruby neumis, budu tohle ignorovat jako pouhe trolovani, vid? 8)

    jenže kdo říká, že to všichni začátečníci musí myslet s programováním vážně ? A? To ze neco nemyslim vazne znamena, ze je ok to delat blbe? "Ja to s tou truhlarinou nemyslim vazne, jen si tak bastlim, takze je zcela ok ze srouby zatloukam kladivem".

    Na amaterstvi neni nic spatneho, naopak, je super. Kdyz ho ale nekdo pouziva jako omluvu a vymluvu k podprumernosti a nekvalite a jeste se tim chlubi... bah.

    co je tak špatného na mém bastlení No, pokud to svoje bastleni vydavas za nastroj pro zacatecniky, tak na tom je samozrejme spatne to, ze v lepsim pripade budou plytvat casem, v horsim se nauci pitomosti.


    XCHAOS: ale ty víš o někom, kdo by se skutečně UČIL programovat podle manuálových stránek ? - wut? No a? Cekas ze si prectes ucebnici a umis vsechno? Hahaha.
    XCHAOS
    XCHAOS --- ---
    _BENNY: hele, to je složitý... v současný fázi to dělám asi hlavně pro sebe.

    to máš tak: kdysi jsem měl jakýsi vlastní framework, který jsem používal asi 5 let, a opravdu do něj byl (ke konci životního cyklu) schopen přidávat docela vychytané věci, které recyklovaly maximum toho, co už jsem měl hotové.

    srovnej si třeba jen desktopová prostředí pro linux. takové GNOME nebo KDE vs. LXDE (je pravda, že lxrandr neumí zatím nastavit plochu přes víc monitorů :) ale jinak je LXDE geniální). LXDE zabírá rezidentně v RAM asi 8 MB, window manager Openbox k tomu navíc asi 4 MB.

    námatkou teď jsem v Gnome (kvůli externímu monitoru na netbooku): nautilus 19M gnome-panel 12 M clock-applet 10m (sic! LXDE prostě má u hodin konfigurovatelný parametr, kterým je formátovací string pro strftime... a nepotřebuje na to žádný aplet). evolution-alarm zabírá 7 MB a to jsem si vůbec instalaci balíku evolution nevyžádal, a nikdy ho nepustil. update-notifier 10 MB gweather-applet 15 MB (když to vidím, tak tu předpověď počasí v Praze na Ruzyni asi oželím :)

    Ale čert vem linuxový desktop... ten peníze nevydělává, a geekové si ho občas neuroticky zoptimalizují, a pak zase z nudy pustí kde co. O to nejde. Já mám ale určité tušení - např. z pozorování toho, kolik paměti zabírají jednotlivé procesy Apache, pokud se v nich aktivuje mod_php a v něm nějaký běžně dodávaný opensource CMS (či jiný bast) - že by šlo webové aplikace psát třeba o řád efektivněji, než dnes.
    DAVIDOWITCH
    DAVIDOWITCH --- ---
    XCHAOS: Ja nevim, jakakoliv referencni knizka k Ccku co mne napada ma u "malloc" poznamku "see: free, realloc". Tak sem asi poslusne seeoval. Vim o reallocu pres 15 let, takze bohuzel presnejc tezko reknu odkud.
    _BENNY
    _BENNY --- ---
    XCHAOS: no ale ty stejne neprogramujes, ty zatim jen vymyslis zaklady programovaciho jazyka, pokud to dobre chapu. tak delas to teda jen pro sebe nebo i pro nekoho jineho? pro koho?
    XCHAOS
    XCHAOS --- ---
    REDGUY: dobře... ale ty víš o někom, kdo by se skutečně UČIL programovat podle manuálových stránek ? v jakém pořadí je pak podle tebe má studovat, nebo jak si to představuješ ?

    samozřejmě, že manuálové stránky jsou výborný zdroj pro toho, kdo aspoň trochu ví, co hledá... ale než víš, co hledáš, tak musíš mít nějaký počáteční záchytný bod... mezi hello world ! a jakýmkoliv použitelnějším programem je obrovský kus cesty.
    XCHAOS
    XCHAOS --- ---
    _BENNY: ...a musí mi o něco jít ? mají snad lidi, jejichž motivace není čistě racionální (nebo možná je, ale není to v daný moment zjevné pro ně, nebo pro někoho dalšího), zakázáno programovat ? :-)

    REDGUY: vycházím jen z toho, že jako pro začátečníky je "lepší než Ruby" prakticky cokoliv :-)

    ne fakt... někomu, kdo to myslí s programováním vážně, a současně je začátečník, bych asi doporučil Python. jenže kdo říká, že to všichni začátečníci musí myslet s programováním vážně ?

    Pokud si uvědomíte, kolik lidí začne a skončí s nějakým bastlením v PHP, tak sakra: co je tak špatného na mém bastlení ? (kromě toho, že jsem už 10 let nic v Céčku nereasnul, když nepočítám jeden obskurní úzce specializovaný bastl bez jakéhokoliv GUI ?)
    REDGUY
    REDGUY --- ---
    XCHAOS: kde je realloc() nějak hezky srozumitelně vysvětlený - wut? Co na nem potrebujes "hezky srozumitelne" vysvetlit?

         The realloc() function tries to change the size of the allocation pointed to by ptr to size,
         and returns ptr.  If there is not enough room to enlarge the memory allocation pointed to by
         ptr, realloc() creates a new allocation, copies as much of the old data pointed to by ptr as
         will fit to the new allocation, frees the old allocation, and returns a pointer to the allo-
         cated memory.  If ptr is NULL, realloc() is identical to a call to malloc() for size bytes.
         If size is zero and ptr is not NULL, a new, minimum sized object is allocated and the original
         object is freed.  When extending a region allocated with calloc(3), realloc(3) does not guar-
         antee that the additional memory is also zero-filled.


    A hotovo.
    REDGUY
    REDGUY --- ---
    XCHAOS: "kdo chce dobře placenou práci, tak šup pryč z tohohle klubu" - uplatenni se na trhu neni zdaleka jen o dobre placene praci. Je to o praci ktera te bavi, kde pracujes s prima lidma a tak dale - treba i na open source projektu. Existuji tisice FOSS projektu v C++. Kolik jich je v Cll1? Nula nebo jeden, pokud pocitam i verzi Cll1 kterou ty sam oznacujes za obsolete. Kde mam vetsi sanci ze najdu zajimavou praci? Slozite pocty 8)
    XCHAOS
    XCHAOS --- ---
    DAVIDOWITCH: u mě to mělo dost historický důvody, to jsme už rozebírali (ne na všech platformách je to efektivní nástroj... ). a kromě toho, všechny učebnice C se už v 90tých letech snažily co nejrychleji přejít od základů C k vysvětlování výhod C++

    fakt by mě zajímal příklad nějaké učebnice C, kde je realloc() nějak hezky srozumitelně vysvětlený... a vlastně by mě zajímalo, odkud se tady kdo to C vlastně učil, když jsme u toho.
    REDGUY
    REDGUY --- ---
    XCHAOS: Aha. Takze transformace z "kandidat do OCC" pres "jazyk pro zacatecniky" pokracuje do "jazyk pro velke projekty ve kterych budu pracovat ja a rada dalsich lidi, kteri umi C++ ale s kterymi nebude mozne se dohodnout na pouzivani urcite podmnoziny C++", ano?

    Cili predpokladas, ze existuje nejaka nenulova mnozina lidi, co (a) umi C++, (b) chteji s tebou spolupracovat na nejakem vetsim projektu a zaroven (c) jsou ochotni misto prace v C++, ktere umi a zvladaji, investovat znacne mnozstvi casu do uceni se tveho bastlu a pouzivat ho? Rozumim tomu dobre?
    DAVIDOWITCH
    DAVIDOWITCH --- ---
    No mne spis nez vicerozmerny pole prekvalipa neznalost reallocu, coz mi prijde jako naprosto zakladni zalezitost jakyhokoliv trochu efektivniho programovani.
    Kazdopadne, pokud jdes smerem na webovy vyuziti, proc se vic nezameris na nejaky multicore a multimachine ficury, nez tam cpat neco co kdyz bude clovek potrebovat, tak si napise ve vyssim jazyce?
    _BENNY
    _BENNY --- ---
    XCHAOS: pokud ti nejde o byznys, o co ti teda jde? o promysleny akademicky proof-of-concept zjevne taky ne.
    XCHAOS
    XCHAOS --- ---
    ad to uplatnění jednotlivých programátorských dovedností na trhu - tak TOHLE je slovo do pranice ! mimochodem - kde jsem říkal, že chci pomoci uplatnění někoho na trhu práce ? kdo chce dobře placenou práci, tak šup pryč z tohohle klubu... dale lepší se jít učit programovat v C++ a pak se nechat zaměstnat v nějakám High Frequency Trading teamu, nebo tak něco... v tom jsou velké peníze... v tom co já vymýšlím určitě ne...
    XCHAOS
    XCHAOS --- ---
    ISTEVE: myslel jsem si, že využívám, ale nedávno sem někdo hodil odkaz na jakýsi onilne test (myslím jsem dal odkaz do záhlaví) - a musím říct, že třeba s vícerozměrnými poli lze opravdu dělat pekelné věci :-)

    tedy... opravdu nejsem žádný C guru... a vím o pár featurách, které spíše ignoruju, a určitě jsou nějaké, které vůbec neznám.

    REDGUY: problém je, že programování není tak docela sólová činnost... a ostatní kolem mě tyto featury používat budou. já je nebudu chápat a z toho vznikne, ehm... mnoho sefgaultů a core dumpů, přinejmenším :-)
    REDGUY
    REDGUY --- ---
    REDGUY: s/plytvat pri uceni/plytvat casem pri uceni/
    ISTEVE
    ISTEVE --- ---
    XCHAOS: To skoro rikas, jako kdyz by C++ open source byl vzacnost ;]

    Mimochodem, vazne vyuzivas vsechny featury C?;) Nebo je ignorujes, stejne jako bys je mohl ignorovat u C++?
    Kliknutím sem můžete změnit nastavení reklam