【发布时间】:2012-06-07 19:26:51
【问题描述】:
我使用strcpy_s如下:
char names[2][20];
strcpy_s(names[0],"Michael");
strcpy_s(names[1],"Danny");
而且一切正常。
但是当我换成char **时,
int size1=2;
int size2=20;
char **names=new char*[size1];
for(int i=0;i<size1;i++)
names[i]=new char[size2];
strcpy_s(names[0],"Michael");
strcpy_s(names[1],"Danny");
它给了我这个错误信息:
错误 C2660: 'strcpy_s' : 函数不接受 2 个参数
为什么会这样?我需要动态创建char数组,怎么办?
【问题讨论】:
-
strcpy!=strcpy_s。你的意思是用哪一个? -
因为这是 C++,请考虑使用
std::vector<std::string>。 -
@hmjd 不要考虑使用它。使用它。
-
@user1203803 清晰!