| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1443 人关注过本帖
标题:[求助]字符串怎么替换?对不起,我再改一下!说的明白些!
只看楼主 加入收藏
kyako
Rank: 1
等 级:新手上路
帖 子:41
专家分:0
注 册:2006-3-6
收藏
 问题点数:0 回复次数:23 
[求助]字符串怎么替换?对不起,我再改一下!说的明白些!

求教一个问题,在C里怎么把替换出来的字符串执行了,比如我有个字符串 stre 内容是 "a=strpos;"

我想让这个字符串执行了,等于我执行了 a=strpos;这条语句,能实现吗?麻烦各位拜托了!!

上边的是原话,可能没说清楚,我再说一次吧,呵呵

我的意思是一个文本,里边每行都写着一些配置,比如

begintime=300

begindate=2

......

我现在的做法是用循环取,如果循环变量等于1,那么我就把我定义的begintime变成这个配置文件里的对应数,同理,这么下去,可是这样配置文件越大,写的也越大,我想我在配置文件里已经写清楚begintime=300了,可不可以读出文本以后,把这个“begintime=300”字符串当做我写在程序里的一条语句,我就不用再用循环变量判断了只要一条或者几条语句,把文本里的字符串取出来,然后执行就得,这个意思,哪位能帮帮我,下边说的宏定义不行,因为当你define时已经把后边写死了,我是要循环读出的,所以宏定义我不会弄,有会的帮帮忙,谢谢啦!

kyako 2006-3-7

也许我表达的不好,是这个意思,a是我之前定义的变量,现在我的方法是设置循环变量,事先规定好,如果变量=1那么就把取出来的字符串“a=str"解析,只要后边的str,然后给a,执行的语句是

strcpy(a,"str");

现在我发现这样的变量太多了,我要设置好多case,所以我想有没有方法,直接把a=str执行了!?

就是我在配置文件里第一行直接写strcpy(a,"str");然后我循环取出这个字符串是就自动执行了,有这个接口吗?

我把我原来的程序写上,帮忙看看吧,也许有帮助理解我的需求!(省略了定义部分^-^)

//配置文件是这样写的

a=str1

b=str2

c=str3

这样的配置文件搭配下边的程序,能实现每行读出来,然后把得到的值给变量,但是程序会因为配置文件的行数而越边越大,那么我想如果配置文件变成下边的样子,然后直接替换出来是不是就很简单了

我想最终的配置文件

strcpy(a,"str1");

strcpy(b,"str2");

当然,需要一个方法,把这个字符串执行了,就卡到这不会了,下边是和原始配置文件搭配的程序段

程序段:

fp=fopen(conf,"r");

i=1;

while(fgets(flag,200,fp))
{

if(i ==1)//说明是第1行

{

p1 =(char *)strchr(flag,'=');
p1++;
strcpy(a,p1);

}

else if(i == 2)//说明是第2行

{

p1 =(char *)strchr(flag,'=');
p1++;
strcpy(b,p1);

..........

}

i++;

}

[此贴子已经被作者于2006-3-7 16:42:35编辑过]

搜索更多相关主题的帖子: 字符 变量 begintime strpos 定义 
2006-03-06 19:28
kyako
Rank: 1
等 级:新手上路
帖 子:41
专家分:0
注 册:2006-3-6
收藏
得分:0 

没人吗?


2006-03-06 19:32
zhangjuan
Rank: 1
等 级:新手上路
帖 子:992
专家分:0
注 册:2006-1-19
收藏
得分:0 

你可以定义宏定义呀!
#define STRE a=strpos

我是菜鸟说错了,可不要砍我


2006-03-06 22:56
showna
Rank: 1
等 级:新手上路
帖 子:24
专家分:0
注 册:2005-10-27
收藏
得分:0 
可以把“a=strpos”一个个字母分开读取吗?
我也是菜鸟
2006-03-06 23:02
feng1256
Rank: 4
等 级:贵宾
威 望:14
帖 子:2899
专家分:0
注 册:2005-11-24
收藏
得分:0 
以下是引用zhangjuan在2006-3-6 22:56:00的发言:

你可以定义宏定义呀!
#define STRE "a=strpos"

我是菜鸟说错了,可不要砍我


叁蓙大山:工謪、稅務、嗣發 抱歉:不回答女人的问题
2006-03-06 23:04
zhangjuan
Rank: 1
等 级:新手上路
帖 子:992
专家分:0
注 册:2006-1-19
收藏
得分:0 
楼主不是这个意思吧,a=strpos变成字符串了。

2006-03-06 23:06
zhangjuan
Rank: 1
等 级:新手上路
帖 子:992
专家分:0
注 册:2006-1-19
收藏
得分:0 
a=strpos如果真是字符串我个人认为没有意义。

2006-03-06 23:09
feng1256
Rank: 4
等 级:贵宾
威 望:14
帖 子:2899
专家分:0
注 册:2005-11-24
收藏
得分:0 
他没表达清楚

叁蓙大山:工謪、稅務、嗣發 抱歉:不回答女人的问题
2006-03-06 23:10
梦想中国
Rank: 2
等 级:新手上路
威 望:5
帖 子:539
专家分:0
注 册:2006-2-26
收藏
得分:0 
没明白

2006-03-06 23:22
kyako
Rank: 1
等 级:新手上路
帖 子:41
专家分:0
注 册:2006-3-6
收藏
得分:0 

晕,又没人了吗?这个论坛白天人好少!!


2006-03-07 10:43
快速回复:[求助]字符串怎么替换?对不起,我再改一下!说的明白些!
数据加载中...
 
   



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

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