LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1194|回复: 6

ptr[-1]=0?

[复制链接]
发表于 2004-2-4 17:13:01 | 显示全部楼层 |阅读模式
steven老大的书的program 4.7里有这么一句
不知道我是的印错了,还是什么?array里能带负数?
发表于 2004-2-4 17:21:44 | 显示全部楼层
呵呵,谁说不能是负数了?

ptr[-1] == *(ptr-1)
发表于 2004-2-4 17:40:40 | 显示全部楼层
array 可以是负数,但能给它赋值吗?赋了值会有效吗??
 楼主| 发表于 2004-2-4 19:22:06 | 显示全部楼层
还是不明白array,i不都是从0开始的嘛,
怎么出现了个负数??
_Z_兄,好好解释一下,谢谢!!
发表于 2004-2-5 00:17:29 | 显示全部楼层
当确信array前一地址有效时,当然可行了。
内核中也这样用的地方
 楼主| 发表于 2004-2-5 17:09:27 | 显示全部楼层
但是我编译的时候,这句抱错了啊,什么原因
发表于 2004-2-5 18:09:37 | 显示全部楼层
这个要接合程序的上下文看,程序的前面有
ptr = fullpath + strlen(fullpath);
*ptr++ = '/';
*ptr = 0;
...
ptr[-1] = 0; /* erase everything from slash onwards */
其实老大的注释也写的很清楚,这一句的作用是把前面自己加的'/'之后的东西删掉
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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