在c ++中将字符串转换为整数

在c ++中将字符串转换为整数

问题描述:

你好
我知道它被问过很多次,但我没有找到我的具体问题的答案。

Hello I know it was asked many times but I hadn't found answer to my specific question.

我想转换只包含字符串只有十进制数:

I want to convert only string that contains only decimal numbers:

例如256可以,但256a不是。

For example 256 is OK but 256a is not.

字符串?

感谢

检查可选的,我可以想到的是这样:

The simplest way that makes error checking optional that I can think of is this:

char *endptr;
int x = strtol(str, &endptr, 0);
int error = (*endptr != '\0');