strcpy为什么报错啊?
int _tmain(int argc, _TCHAR* argv[])
{
char* deck[52];
char* suit[4]={"Hearts","Diamonds","Clubs","Spades"};
strcpy(deck[2],suit[3]);
}
[解决办法]
strcpy()的函数原型是extern char *strcpy(char *dest,const char *src);具体实现
char *strcpy(char *dest,const char *src){
char * strDestCopy=strDest; //[3]
if ((strDest==NULL)||(strSrc==NULL)) //[1]
throw "Invalid argument(s)"; //[2]
while ((*strDest++=*strSrc++)!='\0'); //[4]
return strDestCopy;
}
从实现可以看出这个函数是对指针指向的内容进行操作,而你的代码里面没有deck数组元素内容是指针,这些指针并没有一个明确的指向内容,当然就操作不了了