c从字符串中读取字符串
时间: 2024-09-21 14:10:22 浏览: 32
C++实现从输入中读取字符串
在 C 语言中,从字符串中读取另一个字符串通常通过指针来完成,特别是当字符串存储在内存中的某个已知位置,比如作为常量或动态分配的内存。以下是一个基本的例子,演示了如何使用 `fgets` 函数从输入流中逐字符读取字符串:
```c
#include <stdio.h>
#include <string.h>
#define MAX_LENGTH 50 // 字符串的最大长度
int main() {
char source[50]; // 原始字符串
char target[MAX_LENGTH]; // 存储读取到的新字符串
printf("请输入源字符串: ");
fgets(source, sizeof(source), stdin); // 从标准输入读取
source[strcspn(source, "\n")] = '\0'; // 移除fgets添加的换行符
// 如果需要将读取的字符串复制到目标数组
strncpy(target, source, MAX_LENGTH - 1);
target[MAX_LENGTH - 1] = '\0'; // 确保目标字符串结束符
printf("读取到的字符串是: %s\n", target);
return 0;
}
```
在这个例子中,`fgets` 用于从用户输入获取数据,然后使用 `strncpy` 或手动设置终止符 `\0` 来创建新字符串。
阅读全文