CInt
Converts numeric or string expression to an `Integer`
Syntax
`
Declare Function CInt ( ByVal expression As datatype ) As Integer
Type typename
Declare Operator Cast ( ) As Integer
End Type
`
Usage
`
result = CInt( expression )
result = CInt( string expression )
result = CInt( user defined type )
`
Parameters
`expression`
a numeric, string, or pointer expression to cast to a `Integer` value
`datatype`
any numeric, string, or pointer data type
`typename`
a user defined type
Return Value
An `Integer` value.
Description
If `CInt` is passed a `numeric expression`, it rounds it using using the round-to-even method - i.e. it rounds to the closest integer value, choosing the closest even integer if the number is equidistant from two integers - and returns a 32-bit `Integer`. The function does not check for an overflow, and results are undefined for values which are less than `-2` `147` `483` `648` or larger than `2` `147` `483` `647`.
If the argument is a string expression, it is converted to numeric by using `ValInt`.
The name "CINT" is derived from 'Convert to INTeger'.
Example
`
' Using the CINT function to convert a numeric value
'Create an INTEGER variable
Dim numeric_value As Integer
'Convert a numeric value
numeric_value = CInt(300.5)
'Print the result, should return 300, because 300 is even
numeric_value = CInt(301.5)
'Print the result, should return 302, because 301 is odd
Print numeric_value
Sleep
`
Dialect Differences

- In the -lang qb dialect, `CInt` will return a 16-bit integer, like in QB.

Differences from QB

- The string argument was not allowed in QB

See also

- `Cast`
- `CByte`
- `CUByte`
- `CShort`
- `CUShort`
- `CUInt`
- `CLng`
- `CULng`
- `CLngInt`
- `CULngInt`
- `CSng`
- `CDbl`