CString str;
str="123456789"; //str的内容是变长的,随业务的不同 str内容是不样,长度也是不确定的。int itempDataBuffer=8+str.GetLength(); //统计要发送的部字节数
char* DataBuffer = new char[itempDataBuffer];
memset( DataBuffer, 0, sizeof(char)*itempDataBuffer ); DataBuffer[] 的前面8个字节已付值,但从第8个字节到最后一个的内容要等于str
像这样的功能要什么做? 只能用FOR来做嘛?有没更好的处理办法?
str="123456789"; //str的内容是变长的,随业务的不同 str内容是不样,长度也是不确定的。int itempDataBuffer=8+str.GetLength(); //统计要发送的部字节数
char* DataBuffer = new char[itempDataBuffer];
memset( DataBuffer, 0, sizeof(char)*itempDataBuffer ); DataBuffer[] 的前面8个字节已付值,但从第8个字节到最后一个的内容要等于str
像这样的功能要什么做? 只能用FOR来做嘛?有没更好的处理办法?
或者
memcpy(DataBuffer, str.GetBuffer(), str.GetLength());
memcpy(DataBuffer+8, (LPSTR)(LPCSTR)str, str.GetLength());
int itempDataBuffer=8+str.GetLength(); 你这样取长度可能有问题,要是有汉字之类的
这样才对吧,比你需要的空间多一个字符。