如何在整数数组中存储字符
How to store characters in an integer array?
我正在尝试实现一个函数,该函数将解析分配给我的计算器作业的数字。已经设置了一个 for 循环,它将遍历输入数组中的每个索引,这是一个算术方程,例如"1+2+3+4+5"。我创建了一个函数 isDigit((,如果字符介于 0 和 9 之间,它将返回 true 或 false。这就是我解析数字的方式。我的问题是数字没有永久存储在我想返回的数字[] 数组中。
目前,这些数字正在打印到控制台,第一个 cout 为"12345",但第二个 cout(当前已注释(用于检查我返回的数组存储的内容是一个不明确的十六进制数字。有人可以帮我返回数字中的"12345"[]。
int * parseNumbers(char input[])
{
static int numbers[10];
for (int i = 0; i < strlen(input); i++)
{
if (isDigit(input[i]))
{
numbers[i] = input[i] - '0';
cout << numbers[i];
}
}
//cout << numbers << endl;
return(numbers);
}
数字 = 1, 2, 3, 4, 5
当前获取的数字 = 002D26E8
我认为您正在寻找的是atoi
将字符转换为int。
而不是使用numbers[i] = input[i] - '0';
试试这个:
numbers[i] = atoi(input[i]);
确保有#include <stdlib.h>
如果没有准备好
参考: http://www.cplusplus.com/reference/cstdlib/atoi/
相关文章:
- 使用无符号字符数组有效存储内存
- 在 std::无符号字符的向量处存储 int 的十六进制表示形式
- 我的目标是编写一个程序来计算和存储字符串在字符数组中出现的位置
- 将无符号字符的向量存储在数组中会给我 std::bad_alloc
- 在向量中存储字符指针
- 哪一个更适合存储字符、矢量<char>或字符串?
- 如何在整数数组中存储字符
- 在队列中存储字符数组
- 如何动态存储字符数组
- 存储字符数组
- 存储字符和整数
- 在向量中存储字符串会导致错误
- fill-Arry函数不存储字符并输出符号
- 在内存中存储字符指针
- 存储字符数组值错误(c++)
- 如何使用c++在字符串中存储字符
- 在vector中存储字符指针,c++
- 在指向结构的指针中存储字符时遇到问题
- 存储字符指针,然后稍后填充
- 我如何用c++在闪存STM32F4 HAL中存储字符