如何指向一块内存里的一小块?

to_be_or_not_to_be 2004-09-06 07:20:02
例如一个char buf[255]的内存,我要指向它的100-200之间的内存,应该怎么弄?
...全文
110 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
to_be_or_not_to_be 2004-09-06
  • 打赏
  • 举报
回复
仔细一想,还是觉得没法解决:(
指针只能取位,无法取段
xxiang0506 2004-09-06
  • 打赏
  • 举报
回复
要看你是在什么平台下开发,如果是嵌入式系统,可以直接把首地址用16进制数赋值你在其他地方不要用这段内存,就ok了
  • 打赏
  • 举报
回复
int i = 100;
char *pl = buf +i;
for(i = 100;i < 200; i++)
*(buf+i) = ......
可以满足要求了吧
step_by_step 2004-09-06
  • 打赏
  • 举报
回复
char *pszLeft = buf + 100;
char *pszRight = buf + 200;
这两者之间就是的了
ma100 2004-09-06
  • 打赏
  • 举报
回复
p就是100
p+100就是200
herryhuang 2004-09-06
  • 打赏
  • 举报
回复
你不要用剩下的,C语言不进行数组的越界检查,就是你那个buf[255],用的时候也要自己控制边界。
ma100 2004-09-06
  • 打赏
  • 举报
回复
楼上的对
to_be_or_not_to_be 2004-09-06
  • 打赏
  • 举报
回复
这是100 - 255之间的内存,我要指向的是100 - 200,就是中间那段
herryhuang 2004-09-06
  • 打赏
  • 举报
回复
char* p = buf + 100;

69,371

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧