前缀判断|2013年蓝桥杯B组题解析第五题-fishers

前缀判断

如下的代码判断 needle_start指向的串是否为haystack_start指向的串的前缀,如不是,则返回NULL。
比如:"abcd1234" 就包含了 "abc" 为前缀

char* prefix(char* haystack_start, char* needle_start)
{
	char* haystack = haystack_start;
	char* needle = needle_start;
 
 
	
	while(*haystack && *needle){
		if(______________________________) return NULL;  //填空位置
	}
	
	if(*needle) return NULL;
	
	return haystack_start;
}

答案:haystack++ != needle++

思路:蓝桥杯如果出了两道代码填空,其中一道一定是递归,另一道非递归。这里考察字符串指针。

原文地址:https://www.cnblogs.com/fisherss/p/10326362.html