strstr函数的使用

 

strstr函数的使用

https://www.cnblogs.com/profesor/p/13195971.html
例://找出字符串中所有的is
//找出字符串中所有的is
#define _CRT_SECURE_NO_WARNINGS
#define _CRT_NONSTDC_NO_DEPRECATE
#pragma warning(disable:4996)
#include <stdio.h>
#include <string.h>
int main(int argc, char const *argv[])
{
    char s[200] = "Work is like a capricious lover whose incessant demands are resented but who is missed terribly when she is not there."; 
// To survive in the new world of retail shopkeepers need large amounts of imagination and money.";
    char *p = strstr(s, "is"); //如果找到"is",返回'i'所在的地址
    while (p) {
        printf("%s\n", p);
        p = strstr(p+2, "is"); //指针向下移,用p+1, p+2都行,
    }
    return 0;
}

//找出字符串中所有的is,且只输出”is”:

//找出字符串中所有的is,且只输出"is":
#include <stdio.h>
#include <string.h>
int main(int argc, char const *argv[])
{
    char s[200] = "Work is like a capricious lover whose incessant demands are resented but who is missed terribly when she is not there."; 
// To survive in the new world of retail shopkeepers need large amount of imagination and money.";
    char *p = strstr(s, "is"); //如果找到"is",返回'i'所在的地址
    while (p) {
        char t = *(p+2);
        *(p+2) = 0;
        printf("%s#\n", p);
        *(p+2) = t;
        p = strstr(p+2, "is");
    }
    return 0;
}

//找出字符串中所有的is,且只输出”is”前面的内容:

//找出字符串中所有的is,且只输出"is"前面的内容:
#include <stdio.h>
#include <string.h>
int main(int argc, char const *argv[])
{
    char s[200] = "Work is like a capricious lover whose incessant demands are resented but who is missed terribly when she is not there."; 
// To survive in the new world of retail shopkeepers need large amount of imagination and money.";
    char *p = strstr(s, "is"); //如果找到"is",返回'i'所在的地址
    while (p) {
        char t = *p; //临时存放下p所指的char
        *p = '\0'; //将p所指的char设成0
        printf("%s#\n", s);
        *p = t; //再把原来的p所指的值换回来
        p = strstr(p+2, "is");
    }
    return 0;
}

您可能还喜欢...

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注