CInt

Converts a numeric or string expression to an KeyPgIntegerInteger or an KeyPgIntegerInteger<bits>

Syntax
	KeyPgDeclareDeclare KeyPgFunctionFunction CInt ( KeyPgByvalByVal expression KeyPgAsAs DataTypedatatype ) KeyPgAsAs KeyPgIntegerInteger
	KeyPgDeclareDeclare KeyPgFunctionFunction CInt<bits> ( KeyPgByvalByVal expression KeyPgAsAs DataTypedatatype ) KeyPgAsAs KeyPgIntegerInteger<
	bits>

	KeyPgTypeType typename
		KeyPgDeclareDeclare KeyPgOperatorOperator KeyPgCastCast ( ) KeyPgAsAs KeyPgIntegerInteger
		KeyPgDeclareDeclare KeyPgOperatorOperator KeyPgCastCast ( ) KeyPgAsAs KeyPgIntegerInteger<bits>
	End Type

Usage
	result = CInt( expression )
	result = CInt( string expression )
	result = CInt( user defined type )

Parameters
	bits
		A numeric constant expression indicating the size in bits of integer 
		desired.  The values allowed are 8, 16, 32 or 64.
	expression
		a numeric, string, or pointer expression to cast to a KeyPgIntegerInteger value
	datatype
		any numeric, string, or pointer data type
	typename
		a user defined type

Return Value
	An KeyPgIntegerInteger or KeyPgIntegerInteger<bits> containing the converted value.

Description
	If CInt is passed a numeric expression, it rounds it using using the 
	http://en.wikipedia.org/wiki/Rounding#Round-to-even_method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 an KeyPgIntegerInteger, or if a bits value is supplied, an 
	integer type of the given size.

	The function does not check for an overflow; for example, for a 32-bit 
	KeyPgIntegerInteger the 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 KeyPgValintValInt or KeyPgVallngValLng, depending on the size of the result type.

	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

Dialect Differences
	* In the CompilerOptlang-lang qb dialect, CInt will return a 16-bit integer, like in 
	  QB.

Differences from QB
	* The string argument was not allowed in QB
	* The <bits> parameter was not allowed in QB

See also
	* KeyPgCastCast
	* KeyPgCbyteCByte
	* KeyPgCubyteCUByte
	* KeyPgCshortCShort
	* KeyPgCushortCUShort
	* KeyPgCuintCUInt
	* KeyPgClngCLng
	* KeyPgCulngCULng
	* KeyPgClngintCLngInt
	* KeyPgCulngintCULngInt
	* KeyPgCsngCSng
	* KeyPgCdblCDbl
	* KeyPgIntegerInteger

