Vlákno názorů k článku SDL: Hry nejen pro Linux (3) od Miroslav Maiksnar - nemelo by v tabulce datovych typu byt jako...

  • Článek je starý, nové názory již nelze přidávat.
  • 11. 3. 2005 20:32

    Miroslav Maiksnar (neregistrovaný)
    nemelo by v tabulce datovych typu byt jako ekvivalent Uint32/Sint32 pouzito spis (un)signed long?

    Nevim jestli je SDL portovane na nejakou 16-bit platformu, ale sam jsem par let programoval v C/C++ na 8, 16, 32 a 64 bitovych platformach, takze muzu rict ze velikost intu nepatri mezi ty prave jistoty ;o)
  • 14. 3. 2005 15:04

    Michal Turek
    Když se podíváte do hlavičkového souboru SDL_types.h naleznete tam typedef intu:

    typedef unsigned int Uint32;
    typedef signed int Sint32;

    O trochu níže je skutečná velikost ošetřená řádky:

    SDL_COMPILE_TIME_ASSERT(uint32, sizeof(Uint32) == 4);
    SDL_COMPILE_TIME_ASSERT(sint32, sizeof(Sint32) == 4);

    Před nedávnem jsem zkoušel zkompilovat SDL program v gcc se zapnutou volbou "pedantic" a nepustilo mě to přes podobný test 64-bitového intu, takže tyto asserty asi opravdu fungují a je tedy jistota velikosti typů. Něco podobného se stane v borland cpp builderu, když neurčíte ekvivalenci enumu s intem.