第一篇博客。
讲一个最近写C++拼写检查软件时遇到的问题。
当我需要从char类型(或者char*)转换到std::string类型时,
例如
int tempCharIndex = int('a')+alphaSeq;//计算char字符相应的数值,因为要算偏移量char temp = tempCharIndex;//赋值std::string tempStr = &temp;//转换为string类型tempStr的值为‘a ’或者‘a烫烫烫烫’,有四个空格或者乱码
查询了一下原因,最终也没有完全搞懂,是因为char默认占用4个字节,string自动填充了。
也有说是因为char没有' '作为字符串的边界。
最终我加上了一条
tempStr = tempStr.at(0);
也算是投机取巧了吧。