Primitive Types
Prev |  | Next

# Primitive Types

# Overview

Primitive types have a single value, these include characters, numbers, and pointers. They are all symbols in the keyword package.

- `:char` - Signed 8-bits. A dereferenced :char pointer returns an character.

- `:unsigned-char` - Unsigned 8-bits. A dereferenced :unsigned-char pointer returns an character.

- `:byte` - Signed 8-bits. A dereferenced :byte pointer returns an integer.

- `:unsigned-byte` - Unsigned 8-bits. A dereferenced :unsigned-byte pointer returns an integer.

- `:short` - Signed 16-bits.

- `:unsigned-short` - Unsigned 16-bits.

- `:int` - Signed 32-bits.

- `:unsigned-int` - Unsigned 32-bits.

- `:long` - Signed 32 or 64 bit integer, depending upon the platform.

- `:unsigned-long` - Unsigned 32 or 64 bit integer, depending upon the platform.

- `:long-long` - Signed 64 bits integer for implementations that support this. If implementation does not support this, `'uffi:no-long-long` is pushed on the <variable>cl:*features*</variable> list.

- `:unsigned-long-long` - Unsigned 64 bits integer for implementations that support this. If implementation does not support this, `'uffi:no-long-long` is pushed on the <variable>cl:*features*</variable> list.

- `:float` - 32-bit floating point.

- `:double` - 64-bit floating point.

- `:cstring` - A `NULL` terminated string used for passing and returning characters strings with a `C` function.

- `:void` - The absence of a value. Used to indicate that a function does not return a value.

- `:pointer-void` - Points to a generic object.

- `*` - Used to declare a pointer to an object

Prev |  | Next
def-type | Home | def-constant