如何压缩一串数字

时间:2016-01-06 13:41:05

标签: c++

 char *s = "1234560000000000078999";
unsigned int ss = strlen(s);
vector<int> num;
unsigned int i;
for (i=0;i<ss;i+=2)
{
    num.push_back((s[i] - '0')*10 + (s[i+1] - '0'));
}

我试图压缩一个只包含数字的字符串并将其存储在一个int矢量中 我们的想法是在字符串中加入每个数字并将它们组合成一个整数 我遇到的问题是数字以零开头,例如1107只存储为117和1100存储为110 我遇到的另一个问题是偶数; 任何硫磺请 谢谢

1 个答案:

答案 0 :(得分:2)

实际上,1107确实存储为11和07.当您显示值时,显示两个数字或者您不会看到07上的前导0。与1100相同的事情

至于偶数,是的,你必须仔细查看你正在处理的数字位数。如果ss是奇数,则从存储第一个数字开始。然后成对处理其余的。所以117将被存储为,基本上是01和17。