Linux C代码实现substr函数(类似于PHP中的substr函数)

目录

一、PHP substr()的用法详解

定义和用法

语法

技术细节

二、Linux C代码实现substr函数

三、测试验证

1、substr_demo.php

2、使用substr_demo.c


版权声明:本文为博主(宽简厚重,Yuesichiu)原创文章,未经博主允许不得转载。
https://blog.csdn.net/yuesichiu/article/details/105420075

一、PHP substr()的用法详解

定义和用法

substr() 函数返回字符串的一部分。

注释:如果 start 参数是负数且 length 小于或等于 start,则 length 为 0。


语法

substr(string,start,length)

参数 描述
string 必需。规定要返回其中一部分的字符串。
start 必需。规定在字符串的何处开始。
  • 正数 - 在字符串的指定位置开始
  • 负数 - 在从字符串结尾的指定位置开始
  • 0 - 在字符串中的第一个字符处开始
length 可选。规定要返回的字符串长度。默认是直到字符串的结尾。
  • 正数 - 从 start 参数所在的位置返回
  • 负数 - 从字符串末端返回

技术细节

返回值: 返回字符串的提取部分,如果失败则返回 FALSE,或者返回一个空字符串。
PHP 版本: 4+
更新日志: 在 PHP 5.2.2 到 5.2.6 版本中,如果 start 参数表示负截断或者越界位置,则返回 FALSE。其他版本则从 start 位置开始获取字符串。

二、Linux C代码实现substr函数

三、测试验证

1、substr_demo.php

<?PHP
    $string = "PJSIP/632@9000";
    echo "string:$string\n";
    printf("after substr:%s\n",substr($string,-6, -3));
?>

结果输出:

2、使用substr_demo.c

int main() {
	char string[] = "PJSIP/632@9000";
	char buffer[64] = {0x0};
	char *p = string;
	int ret;
	printf("string:%s\n", string);	
	printf("after substr:%s\n", substr(string, -6, -3, buffer, sizeof(buffer)));
	
    return 0;
}

输出:

 

从上述输出来看,C代码实现的substr函数与PHP内置的substr函数的效果是一致的。

版权声明:本文为博主(宽简厚重,Yuesichiu)原创文章,未经博主允许不得转载。
https://blog.csdn.net/yuesichiu/article/details/105420075

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章