我在数组中创建了一个动态分配的字符串数组,其中有1280个字符串,我正在尝试使用冒泡排序对其进行排序。 Max是1280.我在使用bubbleSort函数时遇到了麻烦,因为它一直给我一个分段错误:11。
char** f = calloc(max, sizeof(char*));
for(i = 0; i < row; i++)
{
f[i] = malloc(349);
}
i = 0;
while(i < max)
{
strtok(d[i], del);
strtok(NULL, del);
strtok(NULL, del);
f[i] = strtok(NULL, del);
i++;
}
for(i = 0; i < 50; i++)
{
printf("%s\n", f[i]);
}
printf("\n\n");
bubbleSort(&f[max], max);
}
void bubbleSort(char *d[], int length)
{
int i, unsorted;
char* temp;
do {
unsorted = 0;
for(i = 0; i < length-1; i++)
if( strcmp(d[i], d[i+1]) > 0 )
{
temp = d[i];
d[i] = d[i+1];
d[i+1] = temp;
unsorted = 1;
}