0
我在以下代碼 中使用set_effect_block
將字符串轉換爲固定大小的20字節字符串。將任意字符串轉換爲固定大小的字符串
class editoritems{
public:
editoritems(string= "");
void set_effect_block(string paramnamestring) //set effect block
{
const char *effectnamevalue=paramnamestring.data();
int length=strlen(effectnamevalue);
length=(length<20?length:19);
strncpy_s(effe_block,effectnamevalue,length);
effe_block[length]='\0';
}
string get_effect_block()const{return effe_block;}
private:
char effe_block[20];
};
editoritems::editoritems(string h)
{
set_effect_block(h);
}
這是一個很好的方法嗎? 有沒有更快的方法?
那麼你當然不需要'strlen'來獲得'std :: string'的長度。 – 2013-05-05 08:05:55