私は持っています
typedef unsigned int DWORD;
void write_str(string str, char** buf) {
DWORD len = str.size();
**buf = len;
*buf += sizeof(len);
memcpy(*buf, str.c_str(), len);
*buf += len;
}
**buf = len;
sizeof(DWORD)= 4であるため、このコード、つまりlenに7があり、4が必要な場合は、1バイトだけが上書きされます。