社区
C语言
帖子详情
简单的,,,-
向良玉
2009-03-27 10:49:15
#include<stdio.h>
void f(int
b[1]
)其中b[1]是干什么用的,传的地址吗??
{
int i;
for(i=2;i<6;i++)b[i]*=2;
}
void main()
{
int a[10]={1,2,3,4,5,6,7,8,9,10},i;
f(a);
for(i=0;i<10;i++)
printf("%d ",a[i]);
}
...全文
128
15
打赏
收藏
简单的,,,-
#include void f(int b[1])其中b[1]是干什么用的,传的地址吗?? { int i; for(i=2;i<6;i++)b[i]*=2; } void main() { int a[10]={1,2,3,4,5,6,7,8,9,10},i; f(a); for(i=0;i<10;i++) printf("%d ",a[i]); }
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
15 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
x491391212
2009-03-29
打赏
举报
回复
[Quote=引用楼主 xiangliangyu2008 的帖子:]
#include <stdio.h>
void f(int b[1])其中b[1]是干什么用的,传的地址吗??
{
int i;
for(i=2;i <6;i++)b[i]*=2;
}
void main()
{
int a[10]={1,2,3,4,5,6,7,8,9,10},i;
f(a);
for(i=0;i <10;i++)
printf("%d ",a[i]);
}
[/Quote]
在编译时,是不检查传入数组大小的,此处只需传入一个数组基地址而已,再者这是一个函数原形,是个函数声明和定义,只有在函数调用时才真正分配形参空间.
liqiong593664937
2009-03-29
打赏
举报
回复
void f(int b[1])
相当于void f(int *b)
都是传地址
Hayden_yang
2009-03-28
打赏
举报
回复
[Quote=引用 3 楼 h13826013646 的回复:]
#include <stdio.h>
void f(int b[1])//b[1]没有什么影响,这里只是传数组的地址值,它不会管你的数组的大小
{
int i;
for(i=2;i <6;i++)b[i]*=2;
}
void main()
{
int a[10]={1,2,3,4,5,6,7,8,9,10},i;
f(a);
for(i=0;i <10;i++)
printf("%d ",a[i]);
}
[/Quote]
注意:声明函数时,不管数组的大小的,因为不分配空间这时候
bo.cui
2009-03-28
打赏
举报
回复
[Quote=引用楼主 xiangliangyu2008 的帖子:]
#include <stdio.h>
void f(int b[1])其中b[1]是干什么用的,传的地址吗??
{
int i;
for(i=2;i <6;i++)b[i]*=2;
}
void main()
{
int a[10]={1,2,3,4,5,6,7,8,9,10},i;
f(a);
for(i=0;i <10;i++)
printf("%d ",a[i]);
}
[/Quote]
void f(int b[1]) 可以理解为:表示参数是一个数组,数组大小是包含一个整形。但是由于C语言并不检查数组越界,所以,1就无所谓了~ 当个指针就OK了~
wzw200
2009-03-28
打赏
举报
回复
谭:第二版 216P
lei_zhuyan
2009-03-28
打赏
举报
回复
c/c++里面如果函数参数传的是数组的话,会将数组转化为指针。
所以下列3种情况是等价的:
1. void f(int* p)
2. void f(int a[])
3. void f(int a[10])
iprometheus
2009-03-28
打赏
举报
回复
过来 看看!
breezes2008
2009-03-27
打赏
举报
回复
来晚了。
ghy3274264
2009-03-27
打赏
举报
回复
[Quote=引用 6 楼 woyaoxiazaiziliao 的回复:]
引用 1 楼 chenzongquan1973 的回复:
int b[]表示形参是一个int数组,那个1是没有用的。
1楼正解
[/Quote]
6楼正解
woyaoxiazaiziliao
2009-03-27
打赏
举报
回复
[Quote=引用 1 楼 chenzongquan1973 的回复:]
int b[]表示形参是一个int数组,那个1是没有用的。
[/Quote]
1楼正解
djjlove_2008
2009-03-27
打赏
举报
回复
呵呵,编译系统只会检测参数类型,这个写法造成楼主你的疑惑哦。
xiaoQ008
2009-03-27
打赏
举报
回复
這個寫法給樓主您造成了疑惑?
h13826013646
2009-03-27
打赏
举报
回复
#include <stdio.h>
void f(int b[1])//b[1]没有什么影响,这里只是传数组的地址值,它不会管你的数组的大小
{
int i;
for(i=2;i <6;i++)b[i]*=2;
}
void main()
{
int a[10]={1,2,3,4,5,6,7,8,9,10},i;
f(a);
for(i=0;i <10;i++)
printf("%d ",a[i]);
}
brookmill
2009-03-27
打赏
举报
回复
void f(int b[1])
相当于void f(int *b)
Cpp权哥
2009-03-27
打赏
举报
回复
int b[]表示形参是一个int数组,那个1是没有用的。
条码制作软件--简易条码v1[1].0
条码制作软件--简易条码v1[1].0条码制作软件--简易条码v1[1].0条码制作软件--简易条码v1[1].0条码制作软件--简易条码v1[1].0条码制作软件--简易条码v1[1].0条码制作软件--简易条码v1[1].0条码制作软件--简易条码v1[1...
Java游戏扫雷-简易复制品.zip
Java游戏扫雷-简易复制品.zipJava游戏扫雷-简易复制品.zip Java游戏扫雷-简易复制品.zipJava游戏扫雷-简易复制品.zip Java游戏扫雷-简易复制品.zipJava游戏扫雷-简易复制品.zip Java游戏扫雷-简易复制品.zipJava游戏...
一个前后端分离的简易进销存后台管理系统,基于SpringBoot和vue-element-admin实现,具备常见的后台管理功能,登录态使用session,使用基于资源url的
简单
权限控制.zip
一个前后端分离的简易进销存后台管理系统,基于SpringBoot和vue-element-admin实现,具备常见的后台管理功能,登录态使用session,使用基于资源url的
简单
权限控制.zip 一个前后端分离的简易进销存后台管理系统,基于...
2024 年全国大学生电子设计竞赛-G题-简易录音屏蔽系统.pdf
2024 年全国大学生电子设计竞赛-G题_简易录音屏蔽系统.pdf 2024 年全国大学生电子设计竞赛-G题_简易录音屏蔽系统.pdf 2024 年全国大学生电子设计竞赛-G题_简易录音屏蔽系统.pdf 2024 年全国大学生电子设计竞赛-G题_...
COMSOL平台变压器二维模型电磁-流-热耦合仿真:计算高效,结果准确,上手简易,COMSOL平台变压器二维模型电磁-流-热耦合仿真:效果展示与计算时间解析,COMSOL【电磁-流-热耦合】仿真
COMSOL平台变压器二维模型电磁-流-热耦合仿真:计算高效,结果准确,上手简易,COMSOL平台变压器二维模型电磁-流-热耦合仿真:效果展示与计算时间解析,【COMSOL】【电磁-流-热耦合】【仿真】 comsol平台下的变压器二...
C语言
70,026
社区成员
243,244
社区内容
发帖
与我相关
我的任务
C语言
C语言相关问题讨论
复制链接
扫一扫
分享
社区描述
C语言相关问题讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章