当我<int>推送包含整数的字符串时,如何修复被推回向量的垃圾值
How to fix garbage values that are being pushed back into a vector<int>, when I push a string containing integers
编辑: - 他的问题与从字符串中获取字符有何不同?
- 指定的技术是C#,而不是C 。
- Question Associates列表框,当我的列表与矢量关联时。
我正在尝试在我的C 整数矢量(向量(中的字符串迭代器的帮助下推动整数的字符串,但是不幸的是,当我按下删除参考的字符串时,我得到的只是将一些垃圾值推入我的向量。
我尝试搜索Google几天。除此之外,我尝试了查看文档,并且我也尝试使用(int(强制使用DE引用的字符串迭代器。
#include <iostream>
#include <vector>
#include <string>
using namespace std;
int main() {
string str = "1234";
vector<int> vec;
for (string::iterator itr = str.begin(); itr != str.end(); ++itr){
vec.push_back(*itr);
}
for (vector<int>::iterator itr = vec.begin(); itr != vec.end();
++itr) {
cout << *itr;
}
return 0;
}
预期输出:1234
实际输出:49505152
您没有看到"垃圾值",而是字符串中字符的数值。也就是说,因为您使用的是像绝大多数人一样的ASCII系统,因此角色'1'
的价值为49,依此类推。如果要将数字字符(例如'1'
(转换为 Integer ,例如1
,则需要减去'0'
(系统上的48(。
相关文章:
- 写入向量<向量<bool>>
- 函数向量_指针有不同的原型,我可以构建一个吗
- std::向量与传递值的动态数组
- 将值指定给向量(2D)的向量中的某个位置
- 找不到成员对象:没有名为get_event()的成员,也处理多态性和向量
- 如何使用向量的template_back函数
- 尝试通过多个向量访问变量时,向量下标超出范围
- 静态数据成员的问题-修复链接错误会导致编译器错误
- 如何修复错误:使用向量查找最小值和最大值进行合并排序
- R data.table 和 STRING_ELT() 错误:如何修复"字符向量"与"字符"错误?
- 如何修复C 中向量的过载变量错误
- 如何修复具有unique_ptr的对象向量
- 如何修复向量不从文件打印值
- 如何在C 向量操作中修复误差
- 当我<int>推送包含整数的字符串时,如何修复被推回向量的垃圾值
- 如何修复初始化结构向量的错误
- 关于修复对向量的线性搜索函数的调用的建议
- 如何在C++中修复这个创建向量
- 如何修复输入向量与输出向量相同时不清除输入向量的错误
- 我如何修复这段代码,使它不会pop_back或back()如果向量/堆栈是空的