---
name: "set_uformat"
section: "3alleg4"
platform: "linux"
package: "allegro4-doc"
version: "2:4.4.3.1-5"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/set_uformat/3alleg4"
---

# set\_uformat(3alleg4)

Set the global current text encoding format. Allegro game programming library.

## NAME

set\_uformat - Set the global current text encoding format. Allegro game programming library.

## SYNOPSIS

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

**void set\_uformat(int type);**

## DESCRIPTION

Sets the current text encoding format. This will affect all parts of  Allegro, wherever you see a function that returns a char \*, or takes a  char \* as a parameter. \`type' should be one of these values:

```
   U_ASCII     - fixed size, 8-bit ASCII characters
   U_ASCII_CP  - alternative 8-bit codepage (see set_ucodepage())
   U_UNICODE   - fixed size, 16-bit Unicode characters
   U_UTF8      - variable size, UTF-8 format Unicode characters
```

Although you can change the text format on the fly, this is not a good  idea. Many strings, for example the names of your hardware drivers and  any language translations, are loaded when you call allegro\_init(), so if  you change the encoding format after this, they will be in the wrong  format, and things will not work properly. Generally you should only call  set\_uformat() once, before allegro\_init(), and then leave it on the same  setting for the duration of your program.

## SEE ALSO

**get\_uformat**(3alleg4), **register\_uformat**(3alleg4), **set\_ucodepage**(3alleg4), **set\_uformat**(3alleg4), **uconvert**(3alleg4), **ustrsize**(3alleg4), **ugetc**(3alleg4), **ugetx**(3alleg4), **usetc**(3alleg4), **uwidth**(3alleg4), **ucwidth**(3alleg4), **uisok**(3alleg4), **uoffset**(3alleg4), **ugetat**(3alleg4), **usetat**(3alleg4), **uinsert**(3alleg4), **uremove**(3alleg4), **allegro\_init**(3alleg4), **exunicod**(3alleg4)
