c语言传递二维数组

本文探讨了C语言中二维数组传递的问题,指出直接声明的二维数组不能直接通过二级指针传递,而需要使用动态分配内存的方式。作者通过示例代码展示了错误的传递方式以及修正后的解决方案,并强调了在C++中应尽量使用如`vector`等数据结构替代二维数组。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

很早以前,还是学c语言的时候,,当我把,数据类型,常量变量,语句控制,函数,指针,结构体,自定义数据类型,还有一些简单人递归,研究完的时候,本以为c语言学的能及格了..那天看到一本c语言的书.令我不敢相信,将近1000页的书..感到很是惊异,那么厚的书只有在c++,java这样库比较多的语言的书中才能看到..

最后得出结论,我的c语言还没及格,,,

 

偶然遇到一个c语言传递二维数组的问题..以前学的时候没有想到...试着做了一个...并不是自己想的那样手到擒来的..

我开始写的是这样的:

 

#include<iostream>

using namespace std;

 

typedef vector<int> cn;

 

void show(int n1, int n2 ,int *p[])

{

    for(int i=0;i<n1;i++)

    {

        for(int j=0;j<n2;j++)

        {

            p[i][j]++;

            cout<<p[i][j]<<" ";

        }

 

        cout<<endl;

    }

 

}

 

int main()

{

    int a[3][3] = {

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值