al_fixed al_itofix(int x);
Introduced in 5.0.0

Converts an integer to fixed point. This is the same thing as x<<16. Remember that overflows (trying to convert an integer greater than 32767) and underflows (trying to convert an integer lesser than -32768) are not detected even in debug builds! The values simply "wrap around".


    al_fixed number;

    /* This conversion is OK. */
    number = al_itofix(100);
    assert(al_fixtoi(number) == 100);

    number = al_itofix(64000);

    /* This check will fail in debug builds. */
    assert(al_fixtoi(number) == 64000);

Return value: Returns the value of the integer converted to fixed point ignoring overflows.

See also: al_fixtoi, al_ftofix, al_fixtof.

Most helpful discussions: