新手求教 如何在字符数组里找到字符元素
如何在字符数组里找到字符元素 该用什么函数[ 本帖最后由 zxlwinner 于 2011-9-5 16:57 编辑 ]
#include <stdio.h> #include <string.h> // 返回子串开始索引,未匹配则返回-1 int findSubStr(const char *src, size_t src_length, const char *sub, size_t sub_length, int begin_pos) { // 保证子串长度不大于源串索引开始序列 if (sub_length > (src_length - begin_pos)) return -1; int i = begin_pos; int j = 0; while ((i + j < src_length) && (j < sub_length)) { if (src[i + j] == sub[j]) j++; else { i++; j = 0; } } if (j == sub_length) return i; else return -1; } int main() { char src[] = "Tomorrow is another day"; char sub[] = "y"; // "other" .... int pos = findSubStr(src, strlen(src), sub, strlen(sub), 0); printf("%d\n", pos); return 0; }