C++ 数组作为参数的传递

 

复制代码
//#include <iostream>
//#include <conio.h>
//using namespace std;
//
//
//void are7(int(&arr)[3][4]); //引用的方式
//void are6(int(*arr)[3][4]); //二维数组指针的方式
//void are5(int *arr, int, int); //一维指针方式
//void are4(int **arr, int, int); //动态分配
//void are3(int(*arr)[4], int); //传入高
//void are2(int arr[][4], int); //传入高
//void are1(int arr[][4]); //高不用填,但一定要一个列
//
//int main()
//{
//    //int arr2[3][4] = {
//    //    { 1, 2, 3 },
//    //    { 4, 5, 6, 7 },
//    //    { 8, 9, 10, 11 },
//    //};
//    //are1(arr2);//二维数组直接传递,退化为指针
//    //are2(arr2, 3);
//    //are3(arr2,3);
//    //int *p = &arr2[0][0];
//    //are4(&p, 3, 4);
//    //are5((int*)arr2,3,4);
//    //are5(arr2[0],3,4);
//    //are6(&arr2);
//    //are7(arr2);
//    system("pause");
//    return 0;
//}
//void are1(int arr[][4])
//{
//    for (int i = 0; i < 3; i++)
//    {
//        for (int j = 0; j < 4; j++)
//        {
//            cout << arr[i][j] << " ";
//        }
//        cout << endl;
//    }
//}
//void are2(int arr[][4], int len)
//{
//    for (int i = 0; i < len; i++)
//    {
//        for (int j = 0; j < 4; j++)
//        {
//            cout << arr[i][j] << " ";
//        }
//        cout << endl;
//    }
//}
//void are3(int(*arr)[4], int len)
//{
//    for (int i = 0; i < len; i++)
//    {
//        for (int j = 0; j < 4; j++)
//        {
//            std::cout << arr[i][j] << " ";
//        }
//        std::cout << std::endl;
//    }
//}
//void are4(int **arr, int len, int row)
//{
//    arr = new int*[len];
//    for (int i = 0; i < len; i++)
//    {
//        arr[i] = new int[row];
//    }
//    for (int i = 0; i < len; i++)
//    {
//        for (int j = 0; j < row; j++)
//        {
//            std::cout << arr[i][j] << " ";
//        }
//        std::cout << std::endl;
//    }
//}
//void are5(int *arr, int len, int row)
//{
//    for (int i = 0; i < len; i++)
//    {
//        for (int j = 0; j < row; j++)
//        {
//            std::cout << arr[j + i * row] << " ";
//        }
//        std::cout << std::endl;
//    }
//}
//void are6(int(*arr)[3][4])
//{
//    for (int i = 0; i < 3; i++)
//    {
//        for (int j = 0; j < 4; j++)
//        {
//            std::cout << (*arr)[i][j] << " ";
//        }
//        std::cout << std::endl;
//    }
//}
//void are7(int(&arr)[3][4])
//{
//    for (int i = 0; i < 3; i++)
//    {
//        for (int j = 0; j < 4; j++)
//        {
//            std::cout << arr[i][j] << " ";
//        }
//        std::cout << std::endl;
//    }
//}
复制代码

 

posted @   YZFHKMS-X  阅读(856)  评论(0编辑  收藏  举报
编辑推荐:
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律
点击右上角即可分享
微信分享提示