编程牛人,帮忙我写个函数吧!!
{
//函数体如何实现啊????
}
value_exchange函数是这样的,参数一:sqlstring是一个带参数的sql语句(update userinfo set email=%v where username=%u) 函数体实现的功能就是用参数二value的值来替换掉sql语句中的%v, 用参数三username的值替换sql语句中的%u。请问一下,函数体里面该如何实现啊? 我刚学编程,折腾了2个多小时了,还没搞出来。大家帮帮忙吧!!
作者: linux_6 发布时间: 2011-03-05
作者: kltwjt 发布时间: 2011-03-05
正则如果不会,就取 %v 和 %u 的索引,然后拼装字符串吧
晕,我刚学编程,你给我谈这么深的东西,我当然听不懂啊
作者: linux_6 发布时间: 2011-03-05
简单一点吧
获取%v在字串中的第几个位置能否(索引)
有了索引取%v之前的字符串可以么
拼接字符串可以实现么
作者: kltwjt 发布时间: 2011-03-05
作者: Levelzero 发布时间: 2011-03-05
int value_exchange(char ** sqlstring,char * value,char * username) { char * str=(char*)malloc(strlen(*sqlstring)*sizeof(char)); strcpy(str,*sqlstring); int length=strlen(*sqlstring)+strlen(value)+strlen(username)-4; char * newstring = (char*)malloc(length*sizeof(char)); char * pv = strchr(str,'%'); char * pu = strrchr(str,'%'); pv+=2; *(pv-2)='\0'; *pu='\0'; sprintf(newstring,"%s%s%s%s",str,value,pv,username); *sqlstring=newstring; }
作者: rabbii 发布时间: 2011-03-05
作者: rabbii 发布时间: 2011-03-05
c的正则俺也没用过,glibc就支持吗?要另外加库不,示例下呗……
作者: rabbii 发布时间: 2011-03-05
你的函数要返回什么东西啊?把你的函数的功能再描述具体一点呗
char *sqlstring="update userinfo set email=%v where username=%u ";
value_exchange(sqlstring, "root@163.com", "root");
最后printf出sqlstring的值为: update userinfo set email='root@163.com' where username='root'
现在问value_exchange函数该怎么实现? 应该够清楚了吧
作者: linux_6 发布时间: 2011-03-05
作者: wangtingguang 发布时间: 2011-03-05