日期:2014-05-16  浏览次数:20400 次

简易内存数据库(七)CREATE

这是CREATE 最后一个需要实现的函数了

/*
 * 描述:4)或者100)把括号前的数字返回
 * 参数:string -- 整体字符串
 * 返回:返回解析后的数字
 */
int getLength(char * string)
{
	//找到')'的位置
	char * end=string;
	while( *end !=')' ) end++;
	//把')赋值成'\0'
	*end='\0';
	//把字符串转成数字
	return atoi(string);
}

?

有个函数是atoi,可以把字符串转成数字。比如atoi("100")就返回100这个数字。

?

我们现在的问题是传入的字符串100后面多了个')',于是我们需要找到这个')'把他直接变成'\0',这样就可以使用atoi函数了。

?

怎么找呢。

先把end指针指向string,也就是指向字符串的第一个字符,然后end++就是把指针一个一个往后移。一直移到*end==')'才结束。也就是说一直移到end指针指向的具体字符串是‘)’就不再移了。

?

这么一个简单的函数,大家一定要弄明白!