03-06-2005
You can use strtol to convert the string to an integer. strtol can report on the first invalid character. No invalid characters means the entire string was an integer.
10 More Discussions You Might Find Interesting
1. Programming
Which function should I use to convert an Integer to a String or Char format ?
Thanx (2 Replies)
Discussion started by: psilva
2 Replies
2. Programming
Hi all,
I am trying to create a function that return an array of integer based on the char parameter pass into the function. I.e.
func_a(char * str)
{
example str is equal to "1,2,3,4"
return an array of integers of 1,2,3,4
}
Please advise
regards
dwgi32 (2 Replies)
Discussion started by: dwgi32
2 Replies
3. UNIX for Advanced & Expert Users
How will test the string contains numeric character or alphabet, is there any script to test ? (10 Replies)
Discussion started by: rajesh08
10 Replies
4. Shell Programming and Scripting
This is the code:
while test 1 -eq 1
do
read a
$a
if test $a = stop
then
break
fi
done
I read a command on every loop an execute it.
I check if the string equals the word stop to end the loop,but it say that I gave too many arguments to test.
For example echo hello.
Now the... (1 Reply)
Discussion started by: Max89
1 Replies
5. UNIX for Dummies Questions & Answers
Hi all,
is there an easy way to convert integer to string in bash?
I have numbers like 1, 2, ..., 112, ...
and I would like to get
001 002 003 004 ...
Thank you,
Sarah (4 Replies)
Discussion started by: f_o_555
4 Replies
6. Shell Programming and Scripting
How to check weather a string is like test* or test* ot *test* in if condition (5 Replies)
Discussion started by: johnjerome
5 Replies
7. Shell Programming and Scripting
hi,
how to I do this?
i="4.000"
if ; then
echo "smaller"
fi
how do I convert the "4.000" to 4?
Thanks! (4 Replies)
Discussion started by: h0ujun
4 Replies
8. Shell Programming and Scripting
I am on HP-UX using ksh in the script.
MaxSal=`sqlplus -silent /nolog <<EOF
connect / as sysdba
whenever sqlerror exit sql.sqlcode
set pagesize 0 feedback off verify off heading off echo off
select max(sal) from emp1;
select max(sal) from emp2;
select max(sal) from emp3;
exit;
EOF`... (3 Replies)
Discussion started by: bang_dba
3 Replies
9. Shell Programming and Scripting
`awk` function looks like this in a file name `fun.awk`:
{
print small()
}
function small()
{
a=$0
smal=0
for(i=1;i<=3;i++)
{
if( a<a)
smal=a
else (4 Replies)
Discussion started by: lazerz
4 Replies
10. Shell Programming and Scripting
Working out a small problem, I have a need of a Perl snippet which might look something like this:
use integer;
...
if ($changingNumber / 2)
{
do something;
}
else
{
do something else;
}
...
What I want to happen is for "if" to resolve as "true" every time a whole... (3 Replies)
Discussion started by: LinQ
3 Replies
LEARN ABOUT REDHAT
strtol
STRTOL(3) Linux Programmer's Manual STRTOL(3)
NAME
strtol, strtoll, strtoq - convert a string to a long integer.
SYNOPSIS
#include <stdlib.h>
long int
strtol(const char *nptr, char **endptr, int base);
long long int
strtoll(const char *nptr, char **endptr, int base);
DESCRIPTION
The strtol() function converts the initial part of the string in nptr to a long integer value according to the given base, which must be
between 2 and 36 inclusive, or be the special value 0.
The string must begin with an arbitrary amount of white space (as determined by isspace(3)) followed by a single optional `+' or `-' sign.
If base is zero or 16, the string may then include a `0x' prefix, and the number will be read in base 16; otherwise, a zero base is taken
as 10 (decimal) unless the next character is `0', in which case it is taken as 8 (octal).
The remainder of the string is converted to a long int value in the obvious manner, stopping at the first character which is not a valid
digit in the given base. (In bases above 10, the letter `A' in either upper or lower case represents 10, `B' represents 11, and so forth,
with `Z' representing 35.)
If endptr is not NULL, strtol() stores the address of the first invalid character in *endptr. If there were no digits at all, strtol()
stores the original value of nptr in *endptr (and returns 0). In particular, if *nptr is not ` ' but **endptr is ` ' on return, the
entire string is valid.
The strtoll() function works just like the strtol() function but returns a long long integer value.
RETURN VALUE
The strtol() function returns the result of the conversion, unless the value would underflow or overflow. If an underflow occurs, strtol()
returns LONG_MIN. If an overflow occurs, strtol() returns LONG_MAX. In both cases, errno is set to ERANGE. Precisely the same holds for
strtoll() (with LLONG_MIN and LLONG_MAX instead of LONG_MIN and LONG_MAX).
ERRORS
ERANGE The resulting value was out of range.
EINVAL (not in C99) The given base contains an unsupported value.
The implementation may also set errno to EINVAL in case no conversion was performed (no digits seen, and 0 returned).
NOTES
In locales other than the "C" locale, also other strings may be accepted. (For example, the thousands separator of the current locale may
be supported.)
BSD also has
quad_t
strtoq(const char *nptr, char **endptr, int base);
with completely analogous definition. Depending on the wordsize of the current architecture, this may be equivalent to strtoll() or to
strtol().
CONFORMING TO
strtol() conforms to SVID 3, BSD 4.3, ISO 9899 (C99) and POSIX, and strtoll() to ISO 9899 (C99) and POSIX-2001.
SEE ALSO
atof(3), atoi(3), atol(3), strtod(3), strtoul(3)
GNU
2002-05-30 STRTOL(3)