---
name: "fixdiv"
section: "3alleg"
platform: "linux"
package: "liballegro-doc"
version: "2:4.2.2-2.2"
release: "Debian 6.0 (Squeeze)"
platforms: ["linux"]
url: "https://new.carta.tech/fixdiv"
---

# fixdiv(3alleg)

Fixed point division. Allegro game programming library.

## NAME

fixdiv - Fixed point division. Allegro game programming library.

## SYNOPSIS

**#include \<allegro.h\>**

**fixed fixdiv(fixed x, fixed y);**

## 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, \`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 set \`errno=0' before calling fixdiv(). Example:

```
   fixed result;
   /* This will put 0.06060 `result'. */
   result = fixdiv(itofix(2), itofix(33));
   /* This will put 0 into `result'. */
   result = fixdiv(0, itofix(-30));
   /* Sets `errno' and puts -32768 into `result'. */
   result = fixdiv(itofix(-100), itofix(0));
   ASSERT(!errno); /* This will fail. */
```

## RETURN VALUE

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

## SEE ALSO

[**fixadd**(3alleg)](/fixadd/3alleg.md), [**fixsub**(3alleg)](/fixsub/3alleg.md), [**fixmul**(3alleg)](/fixmul/3alleg.md), [**exfixed**(3alleg)](/exfixed/3alleg.md)
