我需要使用写入功能不< <运营商写浮动的价格上的文件,但它崩溃我怎样才能将浮点数转换为字符以便在C++中使用写入函数写入文件?
int addDevice(fstream & f, Device & d)
{
char buffer[200];
strcpy(buffer, d.id);
strcat(buffer, "#");
strcat(buffer, d.name);
strcat(buffer, "#");
short length = strlen(buffer) + sizeof(d.price);
char c = '$';
f.seekp(0, ios::end);
f.write((char*) & c, 1);
f.write((char*)&length, sizeof(length));
f.write(buffer, length);
f.write((char *) & d.price, sizeof(float));
f.write((char *)'#', 1);
f.seekp(0, ios::beg);
return length;
}
你怎么能指望任何人来帮助你的时候,我们不能看到什么'Device'是什么?制作[mcve]。 – nwp