ACSUtils Wiki

An ACS library for ZDoom-based ports

User Tools

Site Tools


This is an old revision of the document!

Number parsing

ACSUtils provides functions to convert strings to numbers.

Simple functions

These simply return 0 on error, b:


atoi("123") -> 123
atof("123.456") -> 123.456
atoi("abc") -> 0

Complex functions

These return error status and result, and allow specifying an arbitrary base:

Error statuses are:

  • PARSENUMBER_SUCCESS – number successfully parsed, you can use the result
  • PARSENUMBER_OVERFLOW – the number is too big to fit into a variable, the result will be either INT_MAX or INT_MIN.
  • PARSENUMBER_BADFORMAT - the number could not be parsed at all. You may not use the result. r2 is unchanged.


<code> ParseInt(“123”, 0); r1 → PARSENUMBER_SUCCESS r2 → 123

ParseInt(“10”, 8); In base 8 r1 → PARSENUMBER_SUCCESS r2 → 8 ParseInt(“999999999

number_parsing.1490105943.txt.gz · Last modified: 2017/03/21 16:19 by korshun