int a[][3]={1,2,3,4,5,6,7};a 数组第一维大小多少?

-洪雨- 2011-08-17 10:24:45
是不是有什么公式?
...全文
2467 34 打赏 收藏 举报
写回复
用AI写文章
34 条回复
切换为时间正序
请发表友善的回复…
发表回复
dsoyy 2011-08-17
  • 打赏
  • 举报
回复
[Quote=引用 12 楼 we_sky2008 的回复:]

C/C++ code

#define GetArraySize(array) (sizeof(array) / sizeof(array[0]))

int main()
{
int a[][3]={1,2,3,4,5,6,7};

printf("%d\n", GetArraySize(a));

system("pause");
return 0;
}……
[/Quote]


学习,膜拜一下
pathuang68 2011-08-17
  • 打赏
  • 举报
回复
[Quote=引用 12 楼 we_sky2008 的回复:]

C/C++ code

#define GetArraySize(array) (sizeof(array) / sizeof(array[0]))

int main()
{
int a[][3]={1,2,3,4,5,6,7};

printf("%d\n", GetArraySize(a));

system("pause");
return 0;
}……
[/Quote]

++
这才是高手的写法。
yshf0325 2011-08-17
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 dsoyy 的回复:]
借楼主题目我问个问题,如果我想用sizeof的方式怎么求算?

count = sizeof(a[][3]) / sizeof(int);

sizeof(a[][3]) 这个表达式应该怎么去表述?
[/Quote]

sizeof(a[][3])这种形式不合法,编译时会报错,应写成 sizeof(a)。另外写成sizeof(a[2][3])和sizeof(a[4])的值都为4(如果是32位系统),因为a[2][3]和a[4]都只是代表数组a中的一个数,而这个数是int的。
pathuang68 2011-08-17
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 dsoyy 的回复:]

感谢wyfwx。

1维数组的数组名代表数组首地址;
2维数组,数组名代表维的地址,对吧
[/Quote]
对。
we_sky2008 2011-08-17
  • 打赏
  • 举报
回复

#define GetArraySize(array) (sizeof(array) / sizeof(array[0]))

int main()
{
int a[][3]={1,2,3,4,5,6,7};

printf("%d\n", GetArraySize(a));

system("pause");
return 0;
}
zk___23456 2011-08-17
  • 打赏
  • 举报
回复 2
你看第二维的大小嘛,他是三,那你就将大括号里的数字分组,每组三个元素,不够的补0,之后结束,数数看你分了几组就是第一维的大小。。你的问题的答案是3
Malcus 2011-08-17
  • 打赏
  • 举报
回复
我觉得是3
至善者善之敌 2011-08-17
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 we_sky2008 的回复:]
计算第一维维数:
sizeof(array) / sizeof(array[0])
[/Quote]

++1
we_sky2008 2011-08-17
  • 打赏
  • 举报
回复
计算第一维维数:
sizeof(array) / sizeof(array[0])
dsoyy 2011-08-17
  • 打赏
  • 举报
回复
感谢wyfwx。

1维数组的数组名代表数组首地址;
2维数组,数组名代表维的地址,对吧
wyfwx 2011-08-17
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 dsoyy 的回复:]
借楼主题目我问个问题,如果我想用sizeof的方式怎么求算?

count = sizeof(a[][3]) / sizeof(int);

sizeof(a[][3]) 这个表达式应该怎么去表述?
[/Quote]
count = sizeof(a) / (sizeof(a[0][0])* 3);
dsoyy 2011-08-17
  • 打赏
  • 举报
回复
借楼主题目我问个问题,如果我想用sizeof的方式怎么求算?

count = sizeof(a[][3]) / sizeof(int);

sizeof(a[][3]) 这个表达式应该怎么去表述?
ytfire 2011-08-17
  • 打赏
  • 举报
回复
2维数组其实就是已1维数组形式储存的,第二维参数只是为了分段,便于操作。
故第二维参数不可省,会根据参数数值来区分第一维。

如题,
即{1,2,3}为a[1],{4,5,6}为a[2],{7,0,0}为a[3];
若题为a[][4]
则{1,2,3,4}为a[1],{5,6,7,0}为a[2];
tianmo2010 2011-08-17
  • 打赏
  • 举报
回复
这个系统根据你的初始赋值,会自动分配空间的

比如你这个是7个数字,而要求是3列,如果是2行多了个数字肯定不行,系统默认是3行了
luciferisnotsatan 2011-08-17
  • 打赏
  • 举报
回复
低维是3,
3*3
wyfwx 2011-08-17
  • 打赏
  • 举报
回复
3*3
暮雨晨舟 2011-08-17
  • 打赏
  • 举报
回复
应该是3
AndyZhang 2011-08-17
  • 打赏
  • 举报
回复
感觉不能这么写
吾子墨鸿 2011-08-17
  • 打赏
  • 举报
回复
显然是3*3的
Frog1228 2011-08-17
  • 打赏
  • 举报
回复
按列划分,不足的用0补足。
加载更多回复(14)
内容概要:本文聚焦于“基于中间电容应力分担机制的三阶立方体双向DC-DC变换器”的建模与优化设计,系统阐述其在dq域下的动态建模方法与控制策略优化,涵盖变频与移相协同控制、高电压增益实现、降频软启动、多模式平滑切换等核心技术。结合Matlab、Simulink及PSCAD仿真平台,深入实现全桥LLC、双三相LLC等谐振变换器的混合控制与动态响应分析,并拓展至飞轮储能系统、混合储能平抑风电波动、直流母线电压稳定控制等实际应用场景,构建了从器件级建模到系统级集成的完整仿真体系。同时包含多项高水平期刊论文的复现内容,强化科研可重复性与工程实用性。; 适合人群:电力电子、电气工程及其自动化等相关专业的研究生、科研人员及从事新能源发电、储能系统、电动汽车、智能电网等领域研发的工程技术人员;具备电路拓扑分析、控制系统设计及仿真基础者更佳。; 使用场景及目标:①掌握高频双向DC-DC变换器的精确建模与先进控制方法;②复现并验证权威期刊论文中的关键仿真案例,提升科研创新能力与仿真技术水平;③应用于储能系统能量管理、新能源并网调控、电动汽车充放电模块等高性能电源变换系统的优化设计与动态性能分析。; 阅读建议:建议按照文档目录结构循序渐进学习,优先理解主拓扑的工作原理与控制逻辑,结合所提供的仿真模型进行实操复现,重点关注不同工况下的动态响应、稳定性边界及模式切换过程,深化对电力电子系统协同控制与多时间尺度动态特性的理解。

70,040

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧