c截取字符串指定字符
作者:野牛程序员:2023-08-04 05:41:52C语言阅读 2680
在 C 语言中,可以使用标准库中的字符串处理函数来截取字符串,特别是截取从指定字符开始的子串。以下是两种常用的方法:
方法一:使用 strchr
函数
#include <stdio.h> #include <string.h> int main() { char str[] = "Hello, World!"; char* ptr = strchr(str, ','); // 查找第一个逗号的位置 if (ptr != NULL) { int index = ptr - str; // 计算逗号的索引位置 char subStr[100]; strncpy(subStr, str, index); // 截取子串 subStr[index] = '\\0'; // 添加字符串结束符 printf("Substring: %s\\n", subStr); } else { printf("Character not found.\\n"); } return 0; }
方法二:使用 strstr
函数
#include <stdio.h> #include <string.h> int main() { char str[] = "Hello, World!"; char* ptr = strstr(str, ", "); // 查找逗号和空格的组合 if (ptr != NULL) { int index = ptr - str + 2; // 计算子串的起始索引位置 printf("Substring: %s\\n", &str[index]); } else { printf("Substring not found.\\n"); } return 0; }
在上述两个示例中,使用了 strchr
和 strstr
函数来查找指定字符(或字符组合)在字符串中的位置。然后,使用不同的方法来截取子串,其中 strncpy
函数在方法一中用于复制指定长度的子串,而在方法二中,直接通过索引位置来获取子串。请注意,截取后的子串需要添加字符串结束符 \\0
才能正常使用。
野牛程序员教少儿编程与信息学奥赛-微信|电话:15892516892