字符串处理函数

1.strtok

参数

strToken

字符串包含一个标记或一个以上的标记。

strDelimit

分隔符的设置。

locale

要使用的区域设置。

返回值

返回在 strToken中指向下一个标记的指针。 当未找到其他标记时,它们返回 NULL 。 通过为返回标记后出现的第一个分隔符替换 NULL 字符,每个调用修改 strToken 。

备注

strtok 函数来查找在 strToken的下一个标记。 strDelimit中字符的设置指定标记分隔符,该标记分隔符可能在当前调用的 strToken 中找到。wcstok 和 _mbstok 是宽字符,属于 strtok 的多节字字符版本。 参数和 wcstok 的返回值是宽字符字符串;_mbstok 的参数和返回值为多字节字符字符串。 否则这三个函数否则具有相同行为。

例子

// 分割字符串
void testStrTok(char* szFileName)
{
    printf("Testing StrTok!\n");
    char p[] = "\\";
    char*tmpToken = strtok(szFileName, p);
    while (tmpToken != NULL)
    {
        printf("%s\t", tmpToken);
        // 反复调用一直分割的时候strtok的参数需要使用NULL
        tmpToken = strtok(NULL, p);
    }
}

结果

2.strchr

参数

str

null 终止的源字符串。

c

要定位的字符。

locale

要使用的区域设置。

返回值

函数会返回一个指针指向str中的字符第一次出现的位置或者如果没有发现字符,则会指向NULL 。

例子

// 查找字符出现位置
void testStrChr(char* szFileName)
{
    printf("Testing StrChr!\n");
    char p = '\\';
    // strchr 返回查找到的位置,若没有则返回NULL
    char *tmpChr = strchr(szFileName, p);
    while (tmpChr !=NULL)
    {
        printf("%s\n", tmpChr);
        // 从查找到的位置偏移后继续查找
        tmpChr = strchr(tmpChr+1, p);
    }
}

结果

3.strstr

返回指向在字符串的一个搜索字符串的第一个匹配项。

参数

str

要搜索的 null 终止的字符串。

strSearch

要搜索 null 终止的字符串。

locale

要使用的区域设置。

返回值

如果 strSearch 未出现在 str,则返回指向 strSearch 的第一个匹配项在 str的指针或 NULL指针。 如果 strSearch 指向长度为零的字符串,则函数返回 str。

例子

// 查找字符串出现位置
void testStrStr(char* szFileName)
{
    printf("Testing StrStr!\n");
    char p[] = "\\";
    // strstr 返回查找到的位置,若没有则返回NULL
    char *tmpChr = strstr(szFileName, p);
    while (tmpChr != NULL)
    {
        printf("%s\n", tmpChr);
        // 从查找到的位置偏移后继续查找
        tmpChr = strstr(tmpChr + sizeof p, p);
    }
}

结果

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值