C++ char 转 string

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C++ char 转 string相关的知识,希望对你有一定的参考价值。

我做的是遗传算法里面的解码问题的
GA.m_Population[i].szChromosome(个体.染色体(是一个长度为8的char))
int getTenValue(string s,iStart,iLength);
现在必须通过上面这个函数取得它的十进制值,请各位帮忙下

1. char转string:
string s = char_array_or_pointer;

2. 实现函数
int getTenValue(string s,iStart,iLength)
int sum = 0;
for(int i=iStart; i<iStart+iLength; ++i)
int ival = s[i]; //A->65, B->66, 依此类推
sum += (ival * pow(10, iLength-1-(i-iStart))); //pow是自带函数,注意加上<cmath>

return sum;
追问

错了,应该是这样
int getTenValue(string s,int iStart,int iLength)
int i;
int iRet=0;
string strTemp = s.substr(iStart,iLength);
for (i=0;i<iLength;i++)

if (strTemp.at(i) != '0')

iRet = iRet + (int)pow(2,i);


return iRet;


忘了说了,那个s只有0 1字符串而已,因为我在弄的是遗传算法

参考技术A GA.m_Population[i].szChromosome(个体.染色体(是一个长度为8的char))
这个没看懂,里面的参数是个啥?追问

哦,这个不是函数啦,是一个char; GA指一个类,m_Population[i](一个结构体)是它的一个属性,szChromosome是结构体里一个长度为8的char

现在就是必须要通过这个函数将其转换成十进制数

所以要将szChromosome转换成string再代进函数里面去

追答

哦~

以上是关于C++ char 转 string的主要内容,如果未能解决你的问题,请参考以下文章

CHAR数组转成STRING:C++

c++ 怎么把CHAR转STRING呢

C++,如何将char型数组转换为string类型数组。

c++中如何依次读取一个string中的所有元素?

C++里把char转化为string怎么解决

mfc CString,string,char* 之间的转换