Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/56.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C 使用qsort对字符串数组进行排序_C - Fatal编程技术网

C 使用qsort对字符串数组进行排序

C 使用qsort对字符串数组进行排序,c,C,所以有一个作业要求我从文件中读取输入并对输入进行排序。因此,如果我有一个包含以下内容的文件: banana apple orange 我已成功地将这些字符串插入数组。数组包含如下内容: {'b','a','n','a','n','a','\n','a','p','p','l','e','\n','o','r','a','n','g','e'} 现在让我困惑的是,我必须使用qsort对这些字符串进行排序。我创建了一个比较两个字符数组的方法,它可以工作。但是,它成功地比较了两个不同的字符串。但是

所以有一个作业要求我从文件中读取输入并对输入进行排序。因此,如果我有一个包含以下内容的文件:

banana
apple
orange
我已成功地将这些字符串插入数组。数组包含如下内容:

{'b','a','n','a','n','a','\n','a','p','p','l','e','\n','o','r','a','n','g','e'}

现在让我困惑的是,我必须使用qsort对这些字符串进行排序。我创建了一个比较两个字符数组的方法,它可以工作。但是,它成功地比较了两个不同的字符串。但是,如何使用qsort对数组进行排序

你所写的似乎不是一个字符串数组(char**),而是一个字符数组(char*),它是一个字符数组。除非你的作业还涉及到被烫手,否则我建议你改用标准库字符串。你想要字符串数组(指向多个
char*
,或
char**
),还是字符数组(指向多个
char
,或
char*
)?如果我必须制作2D数组来保存这些字符串,我如何初始化数组(因为每个字符串的长度不同)。目前,我初始化数组“char*arr=malloc(size+1)”,并在fstat2D数组初始化中使用st_size获得大小。初始化分两步:首先初始化“字符串数组”
char**arrStrings=malloc(numStrings*sizeof(char*)
,然后循环“字符串数组”并为每个字符串分配空间:
arrStrings[i]=malloc(size+1)