main() {
char names [5][20] = {
"rmaesh",
"ram",
"suresh",
"sam"
"ramu"
};
char *t;
t = names[2];
names[2] = names[3];
names[3] = t;
printf(" the array elemsnt are \n");
int i = 0;
for (i = 0; i < 5; i ++)
printf("\n%s", names[i]);
}
我收到以下错误,而编译这个程序什么是该类别中的代码
stringarrary.c: In function ‘main’:
stringarrary.c:12:11: error: incompatible types when assigning to type ‘char[20]’ from type ‘char *’
names[2] = names[3];
^
stringarrary.c:13:11: error: incompatible types when assigning to type ‘char[20]’ from type ‘char *’
names[3] = t;
您尚未向t分配任何内存。你应该在最后使用'char t [20]'或'char * t = malloc(20)'和'free(t)'。你的代码会导致分段错误。 –
此外'conio.h'不是标准文件(也不是clrscr) –
@ Mohit Jain但是''C编译器'中不能使用'char * t = malloc(20)'语法。你可以使用'char * t =(char *)malloc(20)':D –