第1关:使用fgets函数读取数据
时间: 2024-09-07 18:00:21 浏览: 59
fgets函数与fputs函数
`fgets`函数是C语言标准库中的一个用于从文件或标准输入读取字符的函数。它通常用于读取字符串,直到遇到换行符或达到指定数量的字符,或者遇到文件结束符EOF。`fgets`函数的原型定义在`<stdio.h>`头文件中。
函数的基本用法如下:
```c
char *fgets(char *str, int n, FILE *stream);
```
参数说明:
- `str`:指向存储输入字符串的缓冲区的指针。
- `n`:指定读取的最大字符数,包含最后的空字符`\0`,所以实际上会读取`n-1`个字符加上一个字符串结束符。
- `stream`:指定输入的流,可以是标准输入`stdin`,也可以是打开的文件流。
使用`fgets`时,它会将读取的字符串存储在`str`指向的内存区域中,并在字符串末尾自动添加空字符`\0`以形成一个完整的C字符串。
下面是一个使用`fgets`函数从标准输入读取一行数据的示例代码:
```c
#include <stdio.h>
int main() {
char str[100]; // 定义足够大的字符数组来存储输入的字符串
printf("请输入一些文本,然后按回车键:\n");
if (fgets(str, sizeof(str), stdin) != NULL) {
printf("你输入的文本是: %s", str);
} else {
printf("读取失败或者到达文件末尾。\n");
}
return 0;
}
```
在实际使用中,需要注意`fgets`会将换行符`\n`也读入缓冲区,如果需要,可能需要手动移除或处理这个换行符。
阅读全文