加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

C – 通过引用传递具有已知大小的多维数组

发布时间:2020-12-16 09:23:39 所属栏目:百科 来源:网络整理
导读:主要: char *myData[500][9]; //dynamic rows??char **tableData[500]={NULL}; //dynamic rows??int r;newCallBack(db,myData,tableData,r); 通过以下方式传递给函数: void newCallBack(sqlite3 *db,char** mdat,char*** tdat,int* r ){ 好像不喜欢这个?
主要:

char *myData[500][9]; //dynamic rows??
char **tableData[500]={NULL};         //dynamic rows??
int r;

newCallBack(db,&myData,&tableData,&r);

通过以下方式传递给函数:

void newCallBack(sqlite3 *db,char** mdat,char*** tdat,int* r )
{

好像不喜欢这个?有什么建议?当你不知道尺寸时在网上有很多例子,现在就试试看….

谢谢.

解决方法

首先,myData的问题在于它是错误的类型. char * [] []需要你正在调用的函数中的原型char ***(一个二维字符串数组).如果您不介意限制字符串的大小,该函数需要一个字符串列表,即char * []或char [] [].

要获得完全动态的数组大小,您必须使用malloc()和free()手动分配(并释放!)内存,并将变量类型更改为char ** myData和char *** tableData.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读