bbs.ChinaUnix.net
首页 | 微博 | 新闻 | Linux | FreeBSD | AIX | Windows | 博客 | 论坛 | 存储 | 网络 | 人才 | Wiki | 资料 | 读书 | 手册 | 下载 | 空间 | 搜索
  免费注册 | 忘记密码 | 会员登录 | 搜索 | 帮助 


取指针内容

  首页 » 论坛 » C/C++ »
[打印] [收藏] [本帖文本页] [推荐此主题给朋友]

一个指向str的指针。
   内容如下:"a b c d e f"
  如何取得e
__________________________________
因为我是菜鸟,所以我要先飞,飞上枝头面对的却是猎人黑洞洞的枪口.



str的首地址加e的偏移量



strchr直接定位也行,呵呵
__________________________________
明犯我强汉天威者,穷搜天下,万里追杀,覆其巢,断其苗裔,戮其身,追其魂,屠其魄,虽远必诛!
----------------------------------
一尺之槌,日取其半,万世不竭!
----------------------------------
欢迎光临Godbach的博客交流技术问题:
http://blog.chinaunix.net/u/33048/
----------------------------------





QUOTE:
原帖由 alexhappy 于 2008-11-20 14:32 发表
str的首地址加e的偏移量




char *str="a b c d e f";
  如果用str[4]错误,因为它不是数组;
如果用str+5则会指向后面的e还有f
有没有简单的方法?
__________________________________
因为我是菜鸟,所以我要先飞,飞上枝头面对的却是猎人黑洞洞的枪口.



str+4





QUOTE:
原帖由 kingink1983 于 2008-11-20 14:39 发表
str+4




注意空格也要算的,我记得有重方法是把一维变成二维
__________________________________
因为我是菜鸟,所以我要先飞,飞上枝头面对的却是猎人黑洞洞的枪口.



char des[2] = {0};

strcpy(des,str的首地址加e的偏移量);

des[1] = '\0';





QUOTE:
原帖由 alexhappy 于 2008-11-20 15:17 发表
char des[2] = {0};

strcpy(des,str的首地址加e的偏移量);

des[1] = '\0';


如日下题是这样呢:
  char *buf="aa bb cc dd ee ff",我要取ee,那该如何是好呢。不要用strstr之类的函数啊
__________________________________
因为我是菜鸟,所以我要先飞,飞上枝头面对的却是猎人黑洞洞的枪口.



str[8]





QUOTE:
原帖由 204tian 于 2008-11-20 15:56 发表
str[8]


#include <stdio.h>
int main()
{
        char *str="aa bb cc dd ee ff";
        printf("%s",str[8]);
}
段错误
__________________________________
因为我是菜鸟,所以我要先飞,飞上枝头面对的却是猎人黑洞洞的枪口.


Copyright © 2001-2010 ChinaUnix.net All Rights Reserved     联系我们:

感谢所有关心和支持过ChinaUnix的朋友们    转载本站内容请注明原作者名及出处

京ICP证041476号


清除 Cookies - ChinaUnix - Archiver - WAP - TOP