鱼C论坛

 找回密码
 立即注册
查看: 922|回复: 9

[已解决]*target此时是什么?

[复制链接]
发表于 2021-12-4 13:28:59 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
这里的target1最后指向的是'\0'后一位的数据嘛?那此时*target1等于什么?
最佳答案
2021-12-4 14:30:23
本帖最后由 jackz007 于 2021-12-4 14:33 编辑

      大概你所说的 "最后" 指的是执行完这一句以后吧?
while(* target1 ++!= '\0') ;
      这一句当 * target1 == '\0' 的时候,先执行 target1 ++,然后才退出循环,所以,循环结束的时候,target1 已经指向 str1 字符串结束字符 '\0' 后面的那个字符了。所以,target - 1 指向 '\0',target1 - 2 指向 '\n' 字符。
W7H5`UIEK7N@9C`Z`9T~8GC.png
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2021-12-4 13:35:49 | 显示全部楼层
本帖最后由 jackz007 于 2021-12-4 13:38 编辑

        target1 最后指向 '\0' 之后的那个字符,至于这个字符是什么,关心它还有任何意义吗?银行里有很多钱,可是,我们只能取到属于我们自己的钱,至于其它的钱它再多,那也是别人的,和我们无干,你说对吧?

评分

参与人数 1荣誉 +1 鱼币 +1 收起 理由
傻眼貓咪 + 1 + 1 鱼C有你更精彩^_^

查看全部评分

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-12-4 13:47:44 | 显示全部楼层
jackz007 发表于 2021-12-4 13:35
target1 最后指向 '\0' 之后的那个字符,至于这个字符是什么,关心它还有任何意义吗?银行里有很多 ...

我的意思是,之后要进行的操作不应该是target1-=3嘛?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-12-4 14:07:16 | 显示全部楼层
本帖最后由 jackz007 于 2021-12-4 14:10 编辑
我的意思是,之后要进行的操作不应该是target1-=3嘛?
        你不是说 "最后" 吗,后面还有操作的话那就是另一回事了。target1-=3 你想收到什么效果,或者说,下一步你希望干什么? tagtet -= 3 将会使 target 指向 str1 从 '\0' 算起,倒数第 3 个字符。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-12-4 14:13:55 | 显示全部楼层
jackz007 发表于 2021-12-4 14:07
你不是说 "最后" 吗,后面还有操作的话那就是另一回事了。target1-=3 你想收到什么效果,或者说 ...

为啥不是从'\0'后一位算起?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-12-4 14:14:43 | 显示全部楼层
jackz007 发表于 2021-12-4 14:07
你不是说 "最后" 吗,后面还有操作的话那就是另一回事了。target1-=3 你想收到什么效果,或者说 ...

你看图里
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-12-4 14:21:13 | 显示全部楼层

       图在哪里?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-12-4 14:24:27 | 显示全部楼层

就开始这个图啊
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-12-4 14:30:23 | 显示全部楼层    本楼为最佳答案   
本帖最后由 jackz007 于 2021-12-4 14:33 编辑

      大概你所说的 "最后" 指的是执行完这一句以后吧?
while(* target1 ++!= '\0') ;
      这一句当 * target1 == '\0' 的时候,先执行 target1 ++,然后才退出循环,所以,循环结束的时候,target1 已经指向 str1 字符串结束字符 '\0' 后面的那个字符了。所以,target - 1 指向 '\0',target1 - 2 指向 '\n' 字符。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-12-4 14:36:27 | 显示全部楼层
jackz007 发表于 2021-12-4 14:30
大概你所说的 "最后" 指的是执行完这一句以后吧?

      这一句当 * target1 == '\0' 的时候,先 ...

哦哦哦,反应过来了,谢谢谢谢
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-9-23 05:19

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表