| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2700 人关注过本帖
标题:请教下关于怎么删除指针型字符中特定的元素
只看楼主 加入收藏
kknd84913
Rank: 1
等 级:新手上路
帖 子:61
专家分:0
注 册:2012-12-26
结帖率:0
收藏
 问题点数:0 回复次数:7 
请教下关于怎么删除指针型字符中特定的元素
定义一个指针型字符char *Hello[]={"Hello","The","World!"};字符数组 问下要想删除其中特定的字符串比如“The”要怎么编程删除??
新手搞不明白怎么删!
搜索更多相关主题的帖子: 怎么编程 字符串 元素 
2013-01-07 11:09
lz1091914999
Rank: 14Rank: 14Rank: 14Rank: 14
来 自:四川
等 级:贵宾
威 望:37
帖 子:2011
专家分:5959
注 册:2010-11-1
收藏
得分:0 
字面字符串如"abcd"等,在程序的静态只读区里,Hello这个数组的每个元素也只是保存这些字符串的首地址而已,而且数组一旦被建立,它的空间就确定了,只有程序执行流程离开它的作用域的时候才能被弹出栈,也就是被销毁(回收或删除),所以想要删除第二个元素"The"这个字符串,只能给它标记一下,比如把它赋值为0,凡是为0的就表示已经被删除了。

My life is brilliant
2013-01-07 11:16
yaobao
Rank: 13Rank: 13Rank: 13Rank: 13
等 级:蒙面侠
威 望:4
帖 子:1854
专家分:4121
注 册:2012-10-25
收藏
得分:0 
直接将Hello[1]=NULL?

认认真真的学习,踏踏实实的走路:戒骄戒躁!!!
2013-01-07 11:17
kknd84913
Rank: 1
等 级:新手上路
帖 子:61
专家分:0
注 册:2012-12-26
收藏
得分:0 
回复 2楼 lz1091914999
没太明白  直接将要删除的元素给NULL的话,好像没效果

[ 本帖最后由 kknd84913 于 2013-1-7 11:34 编辑 ]
2013-01-07 11:29
lz1091914999
Rank: 14Rank: 14Rank: 14Rank: 14
来 自:四川
等 级:贵宾
威 望:37
帖 子:2011
专家分:5959
注 册:2010-11-1
收藏
得分:0 
当然啊,你需要判断啊。

My life is brilliant
2013-01-07 12:06
kknd84913
Rank: 1
等 级:新手上路
帖 子:61
专家分:0
注 册:2012-12-26
收藏
得分:0 
回复 5楼 lz1091914999
实在搞不明白 ,能给出一段完整的程序看看吗?
2013-01-07 13:45
x_x
Rank: 2
等 级:论坛游民
帖 子:44
专家分:43
注 册:2012-10-16
收藏
得分:0 
程序代码:
#include <stdio.h>
void main()
{
    char *p[]={"zzz","qq","aaa"};
    int i;
    for(i=0;i<3;++i)
        printf("%s\n",p[i]);
    p[1]=NULL;
    for(i=0;i<3;++i)
        printf("%s\n",p[i]);
}
结果。
zzz
qq
aaa
zzz
(null)
aaa
Press any key to continue

2013-01-07 14:16
kknd84913
Rank: 1
等 级:新手上路
帖 子:61
专家分:0
注 册:2012-12-26
收藏
得分:0 
回复 7楼 x_x
原来是这样的  居然没想到 悲剧啊。谢谢帮助!
2013-01-07 15:11
快速回复:请教下关于怎么删除指针型字符中特定的元素
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.025624 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved