如何使用排序和比较两个函数对c ++中的char数组进行排序?

时间:2019-08-13 15:43:55

标签: c++

#include <iostream>
#include <algorithm>
using namespace std;
// define compare function to compare between char i and j
 _____________________{       // Line-1: Write proper function header

      _____________________;   // Line-2: Write correct function body

 }
int main() {
    char data[5];

    for (int i = 0; i < 5; i++)
        cin >> data[i];

    sort(data, data + 5, compare);

    for (int i = 0; i < 5; i++)
        cout << data[i] << " ";

    return 0;
}

在上面的代码中,LINE1和LINE2中将显示

  

sort(数据,数据+ 5,比较);

这就是为什么它采用了compare函数的原因,而我在c ++中检查或比较了它为什么将两个字符串作为参数,但是这里没有传递任何参数

1 个答案:

答案 0 :(得分:3)

sort函数从您通过的范围(即前两个参数)中收集对象。

例如,可以将data[0]data[1]作为两个对象。

下一步将是比较两个项目。通常,排序需要比较项目。

sort函数使用comparedata[0]调用data[1]以确定顺序。

总而言之,sort函数可以调用比较函数来确定您指定范围内的对象的顺序。