c++ 数组操作
时间: 2025-04-22 10:55:04 浏览: 18
### C++ 中数组的操作方法与示例
#### 创建一维数组
在C++中,可以通过指定大小来创建固定长度的一维数组。下面的例子展示了如何定义不同类型的数组:
```cpp
#include <iostream>
using namespace std;
int main() {
int arr1[2]; // 定义整型数组arr1,含有两个元素
const int constNum = 4;
float arr2[constNum]; // 使用常量表达式定义浮点数数组arr2
int arr3[constNum + 1]; // 可以通过计算得出数组大小
int num = 5 ;
char arr4[num]; // 对于字符数组,可以使用变量num作为大小[^1]
return 0;
}
```
#### 声明并初始化二维数组
除了简单的一维数组外,还可以声明多维数组,比如二维数组,并对其进行初始化。
```cpp
#include <iostream>
int main(){
int twoDArray[3][4] = { // 初始化一个3x4的二维整形数组
{1, 2, 3, 4},
{5, 6, 7, 8},
{9, 10, 11, 12}
};
cout << "Two-Dimensional Array:" << endl;
for(int i = 0; i < 3; ++i){
for(int j = 0; j < 4; ++j){
cout << twoDArray[i][j] << " ";
}
cout << endl;
}
return 0;
}[^2]
```
#### 动态分配内存给数组
当不确定数组的具体尺寸时,可利用`new`运算符动态地为其分配空间,在不再需要该数组的时候记得调用`delete[]`释放资源。
```cpp
#include <iostream>
using namespace std;
int main(){
int* numbers = new int[5]; // 动态分配五个整数的空间
// 给每个位置赋值
for(int i = 0; i < 5; ++i){
numbers[i] = i * 2;
}
// 显示数值
for(int i = 0; i < 5; ++i){
cout << "numbers[" << i << "]: " << numbers[i] << endl;
}
delete[] numbers; // 清理已分配的内存
return 0;
}[^3]
```
#### 排序算法应用——快速排序
对于已经存在的数据集,如果想要按照一定顺序排列,则可以选择合适的排序算法实现这一目标。这里给出的是基于分治策略的经典快速排序法的一个简化版实现方式。
```cpp
void quickSort(int q[], int L, int R) {
if(L >= R) return ;
int x = q[(L + R) >> 1], l = L - 1, r = R + 1;
while(l < r){
do l++; while(q[l] < x);
do r--; while(q[r] > x);
if(l < r) swap(q[l], q[r]);
}
quickSort(q, L, r), quickSort(q, r + 1, R);
}
// 调用此函数前需确保传入合法范围内的索引以及有效的数组指针
quickSort(arrayName, startIndex, endIndex)[^4];
```
阅读全文
相关推荐


















