Nat*_*ate 7 c++ arrays concatenation stringstream
作为家庭作业的一部分,我需要在C++中连接数组中的某些值.所以,例如,如果我有:
int v[] = {0,1,2,3,4}
Run Code Online (Sandbox Code Playgroud)
我可能需要在某个时候连接v [1] - > v [4],以便得到一个值为1234的int.
我使用stringstream工作,将值附加到stringstream然后转换回整数.但是,在整个程序中,最终将有大约300万个不同的v []排列传递给我的toInt()函数,而stringstream似乎相当昂贵(至少在处理那么多值时).它工作,但非常慢,我正在尽我所能来优化它.
有没有更好的方法在C++中连接数组中的int?我已经做了一些搜索,几乎所有地方似乎只是建议使用stringstream(这有效,但似乎正在减慢我的程序很多).
编辑:只是澄清,我确实需要结果是一个int.
用于简单解决方案的伪代码:
int result = 0;
for (int i=0; i < len(v); i++)
{
result = result*10 + v[i];
}
Run Code Online (Sandbox Code Playgroud)
由于int大小溢出,大型阵列将爆炸.
| 归档时间: |
|
| 查看次数: |
4355 次 |
| 最近记录: |