C++ char 转 string
发布网友
发布时间:2022-04-23 08:32
我来回答
共2个回答
热心网友
时间:2022-06-18 10:48
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字符串而已,因为我在弄的是遗传算法
热心网友
时间:2022-06-18 10:48
GA.m_Population[i].szChromosome(个体.染色体(是一个长度为8的char))
这个没看懂,里面的参数是个啥?追问哦,这个不是函数啦,是一个char; GA指一个类,m_Population[i](一个结构体)是它的一个属性,szChromosome是结构体里一个长度为8的char
现在就是必须要通过这个函数将其转换成十进制数
所以要将szChromosome转换成string再代进函数里面去
追答哦~