Linux C语言将字符串中的内容以换行符为分界点存入字符串数组中
时间: 2024-03-21 14:38:07 浏览: 87
c语言版本-字符串转数组
好的,可以使用C语言中的字符串分割函数 `strtok()` 来实现。
具体实现代码如下(假设要处理的字符串为 `str`):
```c
#include <stdio.h>
#include <string.h>
int main() {
char str[] = "hello\nworld\nwelcome\nto\nlinux";
char *str_array[10]; // 假设字符串数组最多存储10个子字符串
int i = 0;
char *p = strtok(str, "\n"); // 第一次调用strtok时,传入原字符串和分隔符
while (p != NULL) {
str_array[i++] = p; // 将分割得到的子字符串存储到字符串数组中
p = strtok(NULL, "\n"); // 继续调用strtok,传入NULL表示继续处理原字符串,直到处理完所有子字符串
}
// 输出字符串数组中的内容
for (int j = 0; j < i; j++) {
printf("%s\n", str_array[j]);
}
return 0;
}
```
这样,就可以将原字符串以换行符为分界点分割成多个子字符串,并存储在一个字符串数组中,即 `str_array`。
阅读全文