在C中搜索字符串内的单词

时间:2014-05-12 03:14:59

标签: c string

我有一个新手问题,我想跟你学习。 我有一个struct数组,在该数组中我有一个字符串变量。 我想要计算所有带有"字符串"的位置。在字符串变量中。 我的问题是,我不知道string.h函数用于在字符串中搜索单词并对其进行计数。

希望你能帮助我。

这是一个我想要的简单例子。

struct _man
{
  char name[50];
  int house_number;
};


void main()
{
  int i=0,count=0;
  struct _man man[20];
  //assuming there is already information inside the array struct
  for(i = 0; i<20;i++)
  {
    if (//function i want to know to search for the word "Jose" inside string  man[i].name)
    {
      count++;
    }
  }
  printf("There is %d people with the word Jose in their name\n",count);
}

2 个答案:

答案 0 :(得分:1)

strstr()是您需要使用的:

例如:

char * name = "Jose Pedro Birto";
char * toBeMatched = "Pedro";

if (strstr(name, toBeMatched)) {   // or (strstr(name, toBeMatched) != null)
    printf("name contains Pedro");
} else {
    printf("name does not contain Pedro");
}

答案 1 :(得分:0)

您可以使用string.h

中的strstr