✔ 最佳答案
It is because shoesname[size][k] is of type char, while strcpy has the first argument as a pointer to a character, namely type char *.
If I understand correctly, you'd like to have a name container of 12 characters for each shoesize, which is represented by the character pointer shoesname[i] of type char*. So the first argument should then be shoesname[i]. Note that k is undefined above, and shoesname[size]... is out of array bounds.
A working example modified from your code is as follows:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main()
{
const char y1[]={"Y"} ,y2[]={"y"},blank[]={" "};
const int container=12,size=15;
int input;
char shoesname[size][container]={"n"},temp[12]="test";
strcpy(shoesname[0],temp);
printf("%s\n",shoesname[0]);
system("pause");
}
PM me if you have other questions.