c_cpp 在C语言中,返回指向子字符串中字符串开头的指针。
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c_cpp 在C语言中,返回指向子字符串中字符串开头的指针。相关的知识,希望对你有一定的参考价值。
#include <stdio.h>
#include <stdlib.h>
#include <ctype.h>
// Finds the pointer to a substring within a string.
static const char* find_substr(const char* string, const char* substring) {
int on = 0;
const char* index = NULL;
const char* traverse = substring; // resettable
while(*string)
{
if(on)
{
if(!*traverse) return index;
else if(*traverse == *string)
{
traverse++;
}
else
{
traverse = substring;
index = NULL;
on = 0;
}
}
else
{
if(*string == *substring)
{
on = 1;
index = string;
traverse++;
}
}
string++;
}
if(!*traverse) return index;
else return NULL;
}
int main(void) {
const char * result = find_substr("Hello Apple!", "Apple!f");
if(result == NULL) puts("NULL");
else puts(result);
return 0;
}
以上是关于c_cpp 在C语言中,返回指向子字符串中字符串开头的指针。的主要内容,如果未能解决你的问题,请参考以下文章
c_cpp 在字符串中查找子字符串
C语言:输入一行字符,统计其中有多少个单词,单词之间用空格分隔开
如何将指针传递给字符串,指向子字符串的指针,并返回其他内容?
c_cpp 在一个长字符串中,找到出现不止一次的最长子字符串,也称为最长的重复子字符串。
C 语言二级指针案例 ( 字符串切割 | 返回 自定义二级指针 作为结果 | 每个 一级指针 指向不同大小内存 | 精准分配每个 一级指针 指向的内存大小 )
C语言strchr()函数(字符串中查找子字符)