65,186
社区成员




#include <string>
#include <iostream>
using namespace std;
int main()
{
char** pP = NULL;
string str = 0;
pP = (char**)calloc(128, sizeof(char*));
for (int i = 0; i < 128; ++i)
{
pP[i] = (char*)calloc(128, sizeof(char));
}
pP[1000] = "ddd";
str = pP[1000];///这里会报错
printf("%s ", pP[1000]);
return 0;
}
string str = 0;
char **p = new char *[10];
for (int i = 0; i < 10; ++i)
{ //加上这段内存分配
pP[i] = (char*)calloc(128, sizeof(char));
}
p[0] = "aaa";
str = p[0];
printf("%s\n", str);
string str = 0;
char **p = new char *[10];
p[0] = "aaa";
str = p[0];
printf("%s\n", str);
这样为什么错了
string str = "\0";
char **p = new char *[10];
p[0] = "aaa";
str = p[0];
printf("%s\n", str);
这样就不会有问题了