网页
资讯
视频
图片
知道
文库
贴吧
地图
采购
进入贴吧
全吧搜索
吧内搜索
搜贴
搜人
进吧
搜标签
日
一
二
三
四
五
六
签到排名:今日本吧第
个签到,
本吧因你更精彩,明天继续来努力!
本吧签到人数:0
一键签到
成为超级会员,使用一键签到
一键签到
本月漏签
0
次!
0
成为超级会员,赠送8张补签卡
如何使用?
点击日历上漏签日期,即可进行
补签
。
连续签到:
天 累计签到:
天
0
超级会员单次开通12个月以上,赠送连续签到卡3张
使用连续签到卡
03月14日
漏签
0
天
c语言吧
关注:
801,965
贴子:
4,377,118
看贴
图片
吧主推荐
视频
游戏
19
回复贴,共
1
页
<<返回c语言吧
>0< 加载中...
不是说已赋值了的数组不能再次赋值了吗?
只看楼主
收藏
回复
永带妹
低能力者
5
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
这为什么还可以
一周休七日
帕秋莉糕
12
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
分清什么叫赋值什么叫初始化
2026-03-14 00:06:52
广告
不感兴趣
开通SVIP免广告
三岁就很酷
大能力者
8
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
楼主可以给我解释一下为什么选a吗,我刚开始学这个学到指针
方方土是堃
帕秋莉糕
12
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
最主要的部分就是f()函数内容,看参数接受一个int型指针,返回一个int型指针。不明白指针是什么就理解成数组。
看p = f(p)调用时,a[5]里面是1,2,3,4,5;
传入指针p,p又指向数组a,因此相当于将整个a数组传入了f()函数中;
第一行执行了s[1]+=6,根据实参实际上是 *(p+1) += 6或者说是a[1] +=6,因此a[1]的值被加上了6,变成了8;
第二行执行*s = 7,实际上是*p = 7,此时的p依然指向a数组的头号元素,即a[0],所以a[0]被赋值成了7;
第三行执行s+=2,这个题最后的返回值重新赋给了p,因此可以将这句相当于是p+=2,注意前面没有解除引用 * 符号,所以直接修改的是p存放的地址,加2之后,p指向了a[2]元素,即3;
所以最后输出a[0] = 7, a[1] = 8, *p = 3.
连清人丶
超能力者
9
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
没有这种规定
贴吧用户_04MaXe4
大能力者
8
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
数组名才具有 const 属性,数组元素不是。意思就是数组名虽然也是一个指针,但不能给数组名赋值另一个指针。
永带妹
低能力者
5
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
你看看是不是这个意思
int a[3]={1,2,3};中a[0]a[1]a[2]都可以重新赋值,但a就不行,是这个意思吗
登录百度账号
扫二维码下载贴吧客户端
下载贴吧APP
看高清直播、视频!
贴吧页面意见反馈
违规贴吧举报反馈通道
贴吧违规信息处理公示