因此,我试图将一个字符串(由数字组成)转换为数字,并将它们逐位插入到链接列表中。
但是,当我尝试使用它时,编译器总是出现错误。
我尝试使用atoi
和atoi.c_str()
或stoi
,但似乎没有任何效果。
string s = to_string(number_sum);
for (int i = 0; i < s.size(); i++) {
list->val = atoi(s[i].c_str);
list = list->next;
}
其中list是我定义的链接列表,并且具有保存我的电话号码的整数。
因此,如果使用s = 12345
,我希望链接列表为:1->2->3->4->5
。
我也尝试过stoi(s[i])
,但不确定是什么错误。
答案 0 :(得分:3)
atoi
和stoi
将字符串转换为int
。但是您没有这样做。您要做的就是将一个字符转换为int
。为此,您只需从字符串中的字符中减去'0'
即可获得该字符作为int
。这使您的代码看起来像
string s = to_string(number_sum);
for (int i = 0; i < s.size(); i++) {
list->val = s[i] - '0';
list = list->next;
}