Skip to content
Paul Squires edited this page Oct 19, 2026 · 2 revisions

Home › Converting Data Types › ValInt

ValInt

Converts text to a 32-bit integer.

Syntax

Declare Function ValInt ( ByRef strnum As Const String ) As Long
Declare Function ValInt ( ByRef strnum As Const WString ) As Long

Parameters

  • strnum

Description

For example, ValInt("10") will return 10, and ValInt("10.60") will return 10 as well. The function parses the string from the left, skipping any white space, and returns the longest number it can read, stopping at the first non-suitable character it finds. Any non-numeric characters, including decimal points and exponent specifiers, are considered non-suitable, for example, ValInt("23.1E+6") will just return 23.

ValInt can be used to convert integer numbers in Binary / Octal / Hexadecimal format, if they have the relevant identifier ("&B" / "&O" / "&H") prefixed, for example: ValInt("&HFF") returns 255.

If you want to convert a number into string format, use the Str function.

Return Value

Returns a Long value of the converted string

If the first character of the string is invalid, ValInt will return 0.

Remarks

Usage

result = ValInt ( strnum )

Dialect Differences

  • Not available in the -lang qb dialect unless referenced with the alias __Valint.

Differences from QB

  • New to FreeBASIC

See also

Examples

Dim a As String, b As Long

a = "20xa211"

b = ValInt(a)

Print a, b
20xa211   20

Category: Converting Data Types
Kind: function


Reproduced from the FreeBASIC Wiki Manual under the GNU Free Documentation License 1.3 — with no Invariant Sections, no Front-Cover Texts and no Back-Cover Texts. Copyright © the FreeBASIC project and wiki contributors. See License.

Clone this wiki locally