未知长度字符串排序函数c++怎么使用
时间: 2024-09-06 12:07:32 浏览: 42
在 C++ 中,对于未知长度的字符串数组进行排序通常会涉及到动态内存分配和迭代器,可以借助 `<algorithm>` 库提供的 `sort` 函数。下面是一个基本的例子,展示了如何对动态分配的字符指针数组按照字典序进行排序:
```cpp
#include <iostream>
#include <algorithm> // 包含 sort 函数
#include <string>
// 定义一个自定义比较函数用于字符串排序
bool compareStrings(const std::string& s1, const std::string& s2) {
return s1.compare(s2) < 0;
}
int main() {
int n; // 读取字符串的数量
std::cout << "Enter the number of strings: ";
std::cin >> n;
// 动态分配字符串数组
std::string* stringArray = new std::string[n];
// 读取并存储每个字符串
for (int i = 0; i < n; ++i) {
std::cin >> stringArray[i];
}
// 使用 sort 和自定义比较函数对数组进行排序
std::sort(stringArray, stringArray + n, compareStrings);
// 打印排序后的字符串
std::cout << "Sorted strings:\n";
for (const auto& str : stringArray) {
std::cout << str << " ";
}
std::cout << "\n";
// 清理内存
delete[] stringArray;
return 0;
}
```
阅读全文