#大家好,我是一名小bai,第一次用指针,出现问题后查了资料,说是指针内存分配错误,我也不是太懂,试了好多种方法,还是出错.
#求大佬救救小bai吧,给跪了...........................
#include<stdio.h>
#include<string.h>
#include<malloc.h>
void mp(char* name[])
{
char* temp=(char*)malloc(15);
for (int i = 0; i < 5; i++)
{
for (int j = 0; j < 4; j++)
{
if ((strcmp(name[i], name[i + 1] < 0))&&(NULL!=temp))
{
temp = name[i];
name[i] = name[i + 1];
name[i + 1] = temp;
}
}
free(temp);
}
}
main()
{
char country[5][15];
char* ht[5];
printf("请输入五个国家名:");
for (int i = 0; i < 5; i++)
{
scanf_s("%s",country[i],15);
ht[i] = country[i];
}
mp(ht);
printf("排序后:\n");
for (int i = 0; i < 5; i++)
{
printf("%s", ht[i]);
}
}
#错误就是这样纸的,好烦,再次感谢大佬!!!