C语言中如何提取字符串中最一个点之后的字符串
时间: 2024-12-21 14:27:25 浏览: 4
在C语言中,你可以使用库函数`strstr()`或者`strtok()`来提取字符串中最前面的一个点(`.`)之后的部分。以下是两个例子:
1. **使用`strstr()`函数**:
如果你知道点的位置,可以先找到它,然后从该位置加一开始截取。例如:
```c
char str[] = "example.com";
char *dot_pos = strchr(str, '.'); // 找到第一个点
if (dot_pos != NULL) {
dot_pos++; // 点后一位就是分隔点
char sub_str[100]; // 假设最大长度为100
strncpy(sub_str, dot_pos, sizeof(sub_str)); // 复制到新字符串
sub_str[sizeof(sub_str)-1] = '\0'; // 添加终止符
printf("子串: %s\n", sub_str);
}
```
2. **使用`strtok()`函数**:
如果你想动态分割字符串,直到遇到空字符(即字符串结束),可以这样做:
```c
char str[] = "example.com";
char delimiter[] = ".";
char *token = strtok(str, delimiter); // 分割一次
while (token != NULL) {
printf("子串: %s\n", token);
token = strtok(NULL, delimiter); // 继续分割,直到NULL
}
```
阅读全文