Function
GLibascii_string_to_signed
since: 2.54
Declaration [src]
gboolean
g_ascii_string_to_signed(
constgchar*str,
guintbase,
gint64min,
gint64max,
gint64*out_num,
GError**error
)
Description [src]
A convenience function for converting a string to a signed number.
This function assumes that str contains only a number of the given
base that is within inclusive bounds limited by min and max. If
this is true, then the converted number is stored in out_num. An
empty string is not a valid input. A string with leading or
trailing whitespace is also an invalid input.
base can be between 2 and 36 inclusive. Hexadecimal numbers must
not be prefixed with “0x” or “0X”. Such a problem does not exist
for octal numbers, since they were usually prefixed with a zero
which does not change the value of the parsed number.
Parsing failures result in an error with the G_NUMBER_PARSER_ERROR
domain. If the input is invalid, the error code will be
G_NUMBER_PARSER_ERROR_INVALID. If the parsed number is out of
bounds - G_NUMBER_PARSER_ERROR_OUT_OF_BOUNDS.
See g_ascii_strtoll() if you have more complex needs such as
parsing a string which starts with a number, but then has other characters.
Available since: 2.54
Parameters
str-
Type:
const gchar*A string to convert.
The data is owned by the caller of the function.The value is a NUL terminated UTF-8 string. base-
Type:
guintBase of a parsed number.
min-
Type:
gint64A lower bound (inclusive).
max-
Type:
gint64An upper bound (inclusive).
out_num-
Type:
gint64*A return location for a number.
The argument will be set by the function.The argument can beNULL. error-
Type:
The return location for a recoverable error.
The argument can beNULL.If the return location is notNULL, then you must initialize it to aNULLGError*.The argument will be left initialized toNULLby the function if there are no errors.In case of error, the argument will be set to a newly allocatedGError; the caller will take ownership of the data, and be responsible for freeing it.
Return value
Type: gboolean
True if str was a number, false otherwise.