问个最基本的问题!关于字符串的!我的这个为什么错了!
就是这么简单,把字符串拷贝到new出来的空间中,然后调用cout输出,大家帮我看看错在哪了!
// ConsoleApplication1.cpp : 定义控制台应用程序的入口点。
//
#include "stdafx.h"
#include "windows.h"
#include "iostream"
using namespace std;
int _tmain(int argc, _TCHAR* argv[])
{
PBYTE pBuffer = new BYTE(13375 + 2);
strcpy((char *)pBuffer, "xxSSSSSSxxxxxxxxxxxxxxxxx");
int strlength = strlen("xxSSSSSSxxxxxxxxxxxxxxxxx");
pBuffer[strlength+1] = '\0';
PBYTE pText = pBuffer + 2;
cout << pBuffer << endl;
pText = NULL;
delete pBuffer;
pBuffer = NULL;
return 0;
}
[解决办法]
PBYTE pBuffer = new BYTE[13375 + 2];
要用方括号。另外既然是字符串还是用char*吧