社区
C语言
帖子详情
一个知道可以实现但不知道细节的问题.
tigeroar
2003-06-17 03:50:13
我想在一个函数的传入参数里传入N个一维数组.这里的N不确定.
但是N个数组的维数都是想同的.哪位同志知道如何实现还请帮忙.
谢谢!
...全文
14
7
打赏
收藏
一个知道可以实现但不知道细节的问题.
我想在一个函数的传入参数里传入N个一维数组.这里的N不确定. 但是N个数组的维数都是想同的.哪位同志知道如何实现还请帮忙. 谢谢!
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
7 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
bluedodo
2003-06-19
打赏
举报
回复
UP
zteliubin
2003-06-18
打赏
举报
回复
赞成mrzz(zz先生) ,应该是不错的方法了,
或者
function(type* p,int n,int *m);
n是确定的,如果固定的,可以#define.....,就不用传了,
m是每个一维数组的长度,再定义一个一维数组来保存,
调用时传入,这样不用判断越界问题了。
主程序里计算每个一维数组长度。
tigeroar
2003-06-18
打赏
举报
回复
我觉得MRZZ先生的第一种方法可以实现,但是作起来较复杂,请问有没有更好的办法?
yhz
2003-06-18
打赏
举报
回复
一般来说,都是用传指针和维数的方法了。
反而我觉得这才是“标准”的C语法---因为C里面数组名和指针是一样的。
你用int a[5]作为参数,实际上等于int *a。
区别只是在于前者你已经定义了维数,而后者则要你自己定义维数而已。
pzytony
2003-06-17
打赏
举报
回复
up
mrzz
2003-06-17
打赏
举报
回复
楼上的也对,但好像表达不太清楚,我来解释一下:
function(type* p,int n,int m);
可以完成题主愿望!type是参数类型可以是int,long,float,...
数组传入函数后实际上只有首地址传入了,维数信息丢失了,
实际上维数信息在编译期有效,运行时C不知数组有多大(考虑到
效率的问题,如果每次都检查是否越界,会牺牲很多时间,所以
C将维数问题留给了程序员),n,m是数组维数,使用的时候可以
用n,m完成对数组的索引和检查。比如
访问:*p[m*i+j];
检查:if(m*i+j)>=m*n){错误;return}
另外如果题主的意思不是二维数组,而是离散的一维数组,那么问题又
变了,这样的问题可以采用变参数结构或链表的方法解决。
变参数的方法为function(intn,type*p,...);
类似于printf函数,用va_arg,va_start,va_end等宏完成读取(请参阅相关文档)。
链表的方法为:将离散数组做成一个链表,然后将链表作为参数传给函数。
hpho
2003-06-17
打赏
举报
回复
fn(type p[][m],n);
Vue
实现
一个
Tree组件
前言 Tree组件在实际应用中非常广泛,例如省市县地域的展现.一般一些包含从属关系的数据都可以使用Tree组件来进行展示,下面通过
一个
实战的demo来深入学一下
实现
一个
Tree组件所要了解的原理和
实现
细节
.本文
实现
的功能包含以下三点.
实现
一个
基础版可以显示嵌套数据的Tree组件 点击Tree组件的某一级标签它的下一级数据支持异步加载 Tree组件的节点支持拖拽 最终Demo的效果图如下. 基础版的Tree
实现
一个
基础版的Tree组件十分简单,原理就是掌握组件嵌套的使用方法. 外部调用 首先设置外部
为什么需要
一个
接口,
一个
接口的
实现
类,而不是直接调用类里的方法
作者:Dion链接:https://www.zhihu.com/question/20111251/answer/14012223来源:知乎著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。“接口是个规范”,这句没错。“不如直接就在这个类中写
实现
方法岂不是更便捷”,你怎么保证这个接口就
一个
类去
实现
呢?如果多个类去
实现
同
一个
接口,程序怎么
知道
他们是有关联的呢?既然不是
一个
类去
实现
,...
golang 借助于内置sort.slice包
实现
排序
golang使用内置sort包
实现
排序使用sort.Slice()方法
实现
数组的排序操作系统和开发环境sort.Slice()介绍
实现
(直接上代码了)运行结果截图 使用sort.Slice()方法
实现
数组的排序 使用内置的sort.slice接口
实现
数组的排序是我目前所知的比较简单的一种排序方式,可以很快的
实现
数组的排序,个人比较推崇。我所
知道
的另外一种基于sort包的排序,需要首先写
一个
结构体...
Android Context完全解析,你所不
知道
的Context的各种
细节
Context相信所有的Android开发人员基本上每天都在接触,因为它太常见了。但是这并不代表Context没有什么东西好讲的,实际上Context有太多小的
细节
并不被大家所关注,那么今天我们就来学习一下那些你所不
知道
的
细节
。我们
知道
,Android应用都是使用Java语言来编写的,那么大家可以思考一下,
一个
Android程序和
一个
Java程序,他们最大的区别在哪里?划分界限又是什么呢?其实简单点分析,Android程序不像Java程序一样,随便创建
一个
类,写个main()方法就能跑了,而是要有
一个
完整的
Tomcat(二) Tomcat
实现
:Servlet与web.xml介绍 以及 源码分析Tomcat
实现
细节
下面将深入了解Tomcat技术的
实现
:先来了解JavaEE Servlet技术的一些对象组件;再来了Web应用程序部署文件web.xml中对Servlet组件的定义;最后再从Tomcat源码分析
实现
细节
,重点关注:Tomcat的启动/初始化、并发线程模式、接收请求与处理、以及Servlet容器的
实现
。
C语言
69,371
社区成员
243,082
社区内容
发帖
与我相关
我的任务
C语言
C语言相关问题讨论
复制链接
扫一扫
分享
社区描述
C语言相关问题讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章