logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

al_fixdiv - Allegro 5 API

Description

       A  fixed  point value can be divided by an integer with the normal / operator.  To divide two fixed point
       values, though, you must use this function.  If a division by zero occurs, Allegro’s errno  will  be  set
       and the maximum possible value will be returned, but errno is not cleared if the operation is successful.
       This  means  that  if  you  are going to test for division by zero you should call al_set_errno(0) before
       calling al_fixdiv(3alleg5).

       Example:

              al_fixed result;

              /* This will put 0.06060 `result'. */
              result = al_fixdiv(al_itofix(2), al_itofix(33));

              /* This will put 0 into `result'. */
              result = al_fixdiv(0, al_itofix(-30));

              /* Sets errno and puts -32768 into `result'. */
              result = al_fixdiv(al_itofix(-100), al_itofix(0));
              assert(!al_get_errno()); /* This will fail. */

Name

       al_fixdiv - Allegro 5 API

Return Value

       Returns the result of dividing x by y.  If y is zero, returns the maximum possible fixed point value  and
       sets Allegro’s errno to ERANGE.

See Also

al_fixadd(3alleg5), al_fixsub(3alleg5), al_fixmul(3alleg5), al_get_errno(3alleg5).

Allegro reference manual                                                                      al_fixdiv(3alleg5)

Synopsis

              #include <allegro5/allegro.h>

              al_fixed al_fixdiv(al_fixed x, al_fixed y);

See Also