c语言连续接受不定长度字符串,并且单个字符存入数组
时间: 2024-12-21 15:31:26 浏览: 11
在C语言中,如果你想要连续读取不确定长度的字符串并存储在一个字符数组中,通常我们会使用`fgets()`函数结合循环结构。`fgets()`函数可以一次读取一行包括空格在内的文本,并将其存储到指定的缓冲区中。
下面是一个简单的示例,假设我们有一个名为`inputString`的字符数组:
```c
#include <stdio.h>
#define MAX_INPUT_LENGTH 100 // 设定输入的最大长度
int main() {
char inputString[MAX_INPUT_LENGTH]; // 定义字符数组
int i = 0; // 计数器
printf("请输入一个字符串: ");
while ((i < MAX_INPUT_LENGTH - 1) && (fgets(inputString, sizeof(inputString), stdin) != NULL)) { // 防止溢出,减去1是因为fgets会自动添加终止符'\n'
inputString[i] = '\0'; // 结束字符串,防止未读字符影响后续处理
++i;
if (inputString[i-1] == '\n') { // 检查是否到达了换行符,即字符串结束
break;
}
}
// 现在inputString包含输入的字符串
printf("输入的字符串是: %s\n", inputString);
return 0;
}
阅读全文