-1

可能重复:
将字符串转换为整数 C

我想将从命令 argv[1] 收到的数字转换为“int”。我知道 argv 存储为字符串,但我怎样才能从它们中获取整数值。假设 argv[1] = 10。

4

2 回答 2

2

您可以使用atoi()C 标准库中的函数:

http://en.cppreference.com/w/cpp/string/byte/atoi

于 2012-10-06T17:18:59.570 回答
1

POSIX C 库包含将字符串转换为实际数值的不同函数。这里有一些例子:

long some_long = strtol(argv[1], NULL, 10);
long long some_longlong = strtoll(argv[1], NULL, 10);
unsigned long some_unsigned_long = strtoul(argv[1], NULL, 10);
unsigned long long some_unsigned_longlong = strtoull(argv[1], NULL, 10);

甚至还有用于转换为浮点值的函数:

double some_double = strtod(argv[1], NULL);
float some_float = strtof(argv[1], NULL);
long double some_long_double = strtold(argv[1], NULL);

如需进一步参考,请阅读此处和更多地方(同一网页上的 strtoul.html 和 strtod.html)。

于 2012-10-06T21:05:58.880 回答