社区
新手乐园
帖子详情
使用scanf为什么要加取地址符
waslgxl
2011-05-20 08:17:05
比如定义 数字a[0]
sacnf("\d%",&a[0]);
为什么要使用取地址符呢
不加的话会怎么样呢
...全文
1591
5
打赏
收藏
使用scanf为什么要加取地址符
比如定义 数字a[0] sacnf("\d%",&a[0]); 为什么要使用取地址符呢 不加的话会怎么样呢
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
5 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
辰岡墨竹
2011-05-20
打赏
举报
回复
因为scanf的参数列表是不定长的,所以它不能像别的函数一样,将形参设定为引用型的,只能由调用者来做。
如果不按引用传地址的话,会按值传递参数。
無_1024
2011-05-20
打赏
举报
回复
吧数字存到地址里面 按引用或者地址传值的理解
KID_coder
2011-05-20
打赏
举报
回复
scanf("%d",&a[0]);
scanf函数会把获取的值送到一个地址~
如果不加&,则把a[0]的值当做一个地址,传送过去
每个函数都有自己的参数列表。。。
不过不传符合规定的参数,操作会危险
就想叫yoko
2011-05-20
打赏
举报
回复
不加就赋值不了
千杯不醉-sen
2011-05-20
打赏
举报
回复
这个是语法问题,算是常识或是潜规则吧,该记得就记住
scanf
();为什么要用取
地址
符
scanf
(“格式控制字
符
串”,
地址
表列); 其中,格式控制字
符
串的作用与printf函数相同,但不能显示非格式字
符
串,也就是不能显示提示字
符
串。
地址
表列中给出各变量的
地址
。
地址
是由
地址
运算
符
“&”后跟变量名组成的...
scanf
为什么有时用取
地址
符
,有时不用---取址
符
:&
这两个都是取得键盘输入内容,为什么一个用了“&”一个没有用? 答:因为a是个整型变量名,所以
SCANF
要取得这个变量在内存中的
地址
;而name是char数组,name本身指向这个数组首
地址
。也就是说a里面保存的是内容,...
scanf
没有(不加)取
地址
符
& 的情况
之前看到过这种不
加取
地址
符
的
scanf
刚开始很疑惑,觉得有问题,但我学了指针之后就恍然大悟了。 首先这个a不是变量,而是一个数组,a代表着这个数组的首
地址
即&a[0]。 其次a+i代表的就是数组中下一个元素的...
在
scanf
函数里不
加取
地址
符
的后果之一
就是
scanf
函数不
加取
地址
符
可能导致的后果之一
scanf
函数为什么要用&取
地址
符
?
采用取
地址
是为了改变a的值,按照...(形参不能改变实参)
scanf
,传入的参数是值传递, 没办法修改到原变量,所以必须要取
地址
.所以我们需要
地址
符
&将形参存入我们的实参中。注意:函数参数传递中的值传递和指针传递。
新手乐园
33,322
社区成员
41,774
社区内容
发帖
与我相关
我的任务
新手乐园
C/C++ 新手乐园
复制链接
扫一扫
分享
社区描述
C/C++ 新手乐园
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章