溫馨提示×

c++ qsort如何處理字符串排序

c++
小樊
108
2024-11-25 06:26:32
欄目: 編程語言

在C++中,使用qsort函數對字符串進行排序時,需要提供一個比較函數,該函數用于確定兩個字符串的順序

#include <iostream>
#include <algorithm>
#include <vector>
#include <string>

// 自定義比較函數,用于字符串排序
int compareStrings(const std::string &a, const std::string &b) {
    return a.compare(b);
}

int main() {
    // 創建一個包含字符串的vector
    std::vector<std::string> strList = {"apple", "banana", "orange", "grape", "kiwi"};

    // 使用qsort函數對字符串進行排序
    qsort(strList.begin(), strList.end(), compareStrings);

    // 輸出排序后的字符串
    for (const auto &str : strList) {
        std::cout << str << std::endl;
    }

    return 0;
}

在這個示例中,我們首先包含了必要的頭文件,然后定義了一個自定義的比較函數compareStrings,該函數接受兩個std::string類型的參數,并使用std::string類的compare成員函數來比較它們。接下來,我們創建了一個包含字符串的std::vector,并使用qsort函數對其進行排序,傳入向量的起始迭代器、結束迭代器和自定義的比較函數。最后,我們遍歷并輸出排序后的字符串。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女