我必须编写一个函数:findNextChar()
。该函数必须有 2 个参数,1 个字符串和 1 个字符。 char 是必须在字符串中找到的字符。如果找到该字符,则应将数组中的下一个字符存储在数组中,并在末尾附加一个“\0”。例如:
Kukuruz" und "u" = 'k','r','z',\0'
但在我的代码中,只找到字符串的第一个字符 ('k','k','k','\0'
)
我的代码:
#include <stdio.h>
#include <string.h>
int main()
{
char string[]="Kukuruz";
char *search;
char array[3];
int i;
for (i=0; i<3; i++)
{
search = strchr(string, 'u');
search++;
strncpy(array, search, 1);
printf("'%s',",array);
}
printf("'/0'");
return 0;
}
您总是从字符串的开头搜索。相反,您必须从上一场比赛后的位置开始。
两个更改应该可以解决问题:
char *search = string;
和
search = strchr(search, 'u');
我是一名优秀的程序员,十分优秀!