atoi中的Null将值转换为0
null in atoi converts the value to 0
在我的程序中,我有一个字符数组(char data[]),我必须从中提取数据并将其存储在一个整数变量(值)中。为此,我在程序中使用了atoi。问题是,我有时收到空字符数组(数据)。如果我在这个值上使用atoi,我在整数变量中得到值0而不是(null)
真正的函数是相当大的,我不能张贴整个代码在这里。从下面提到的函数,我希望你们能对我在这里做的事情有所了解。
Get_Data(char data[])
{
int value;
value = atoi(p);
}
我最近读到我们应该用散步来代替atoi。我也试过了。但变量值仍然是0。
我想知道我应该使用哪个函数,以便我在整数变量值中获得(null) ?
这里的null是指空字符数组
请针对问题提供解决方案。在上面的函数中,如果数据得到空字符值,我如何确保我的int变量值也得到空值而不是零??
返回0
如果str中的第一个非空白字符序列不是有效的整数,或者如果不存在这样的序列,因为STR为空或仅包含空白字符,不进行转换,返回0。
您还要求返回NULL
是不可能的,因为您在int
和int
中分配这些值不能保留NULL
因为atoi试图尽可能多地读取。
您应该使用strtol,像这样:
char* endptr = NULL
char* myString = "OUPS";
long n = strtol(myString, &endptr, 10);
if (*endptr != ' ') {
// ERROR
}
阅读参考链接以获得更多解释(和示例)
这不是很好吗?
c++中没有拼写为null
的整型值
相关文章:
- 如何使用OpenCV将RBG图像转换为HSV,并将H、S和V值保存为C++中的3个独立图像
- 将"打开的CV图像"中的"颜色"转换为整数格式
- 了解 GLM- openGL 中的相机转换
- C++中的双指针类型转换
- 了解双精度转换与整数转换中的整数与截断关系
- C++要包含在词法强制转换中的头文件
- 是否可以使用 SAPI 忽略Microsoft文本到语音转换中的单词
- 处理字符到QString转换中的ASCII字符
- 反射格雷码到二进制转换中的幻数
- 自定义文本到语音转换中的语音
- C++ 为转换中的多数组错误增加值
- Java C/C++ 转换中的指针
- 标准::转换中的 [] const_iterator::value_type 是什么意思
- HSV 转换中的浮点错误
- 动态转换中的错误
- c++int存储为char*转换中的字符,无需任何API
- 引用类型转换中的c++虚函数
- 不同的编译器用来处理数字转换中的溢出的常见策略是什么?
- 隐式常量转换中的溢出[-Woverflow]
- 从c++到c# . net紧凑框架结构转换中的问题