gpt4 book ai didi

用于 C 的类似 PHP 的子字符串函数

转载 作者:行者123 更新时间:2023-11-30 17:46:25 26 4
gpt4 key购买 nike

我一直致力于用 C 创建字符串 (char*) 操作函数,我最新的函数是一个类似 PHP 的子字符串函数。我发帖是为了让其他人能够从中受益,如果您提出任何改进该功能的建议,我将不胜感激。

最佳答案

这是 C 语言中的 PHP 子字符串函数。

char *substr(char *str, int start, int num)
{
//find string length
int len = sj_strlen(str);

char *result;

//Return "" if start is longer than str
if(start > len || (start*-1) > len)
{
result = malloc(1);
*result = '\0';
return result;
}

//Setting pointer to appropriate position
if(start >= 0)
{
str += start;
}
else
{
str += (len+start);
}

//Allocate space for returned substring
result = malloc(num+1);
char *ptr = result;

//Adding characters to the result
while(num > 0 && *str)
{
*ptr++ = *str++;
num--;
}

//Terminating character
*ptr = '\0';

return result;
}

int main()
{
char *str = "Hello, world!";
printf("%s\n",substr(str,-10,2)); //outputs lo
printf("%s",substr(str,7,5)); //outputs world
}

关于用于 C 的类似 PHP 的子字符串函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19286535/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com