Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
al_fixsub(3)		   Library Functions Manual		  al_fixsub(3)

NAME
       al_fixsub - Allegro 5 API

SYNOPSIS
	      #include <allegro5/allegro.h>

	      al_fixed al_fixsub(al_fixed x, al_fixed y);

DESCRIPTION
       Although	 fixed point numbers can be subtracted with the	normal - inte-
       ger operator, that doesn't provide any protection against overflow.  If
       overflow	is a problem, you should use this  function  instead.	It  is
       slower  than using integer operators, but if an overflow	occurs it will
       set Allegro's errno and clamp the result, rather	than just  letting  it
       wrap.

       Example:

	      al_fixed result;

	      /* This will put 4965 into `result'. */
	      result = al_fixsub(al_itofix(5000), al_itofix(35));

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

RETURN VALUE
       Returns	the  clamped result of subtracting y from x, setting Allegro's
       errno to	ERANGE if there	was an overflow.

SEE ALSO
       al_fixadd(3), al_fixmul(3), al_fixdiv(3), al_get_errno(3).

Allegro	reference manual					  al_fixsub(3)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=al_fixsub&sektion=3&manpath=FreeBSD+Ports+14.3.quarterly>

home | help