举例说明c++ 中fscanf用法
时间: 2024-12-08 07:12:42 浏览: 10
`fscanf()`是C++标准库中的一个输入函数,用于从指定的文件流(如`FILE*`类型的指针)中读取数据,并按照格式字符串匹配的方式将数据存储到变量中。它的基本语法如下:
```cpp
int fscanf(FILE *stream, const char *format, ...);
```
其中:
- `stream` 是指向要读取的文件的指针。
- `format` 是一个格式字符串,类似于printf中的格式,描述了要读取的数据类型和顺序。
例如,如果你想从一个文本文件中读取一个整数和一个浮点数,你可以这样做:
```cpp
int num;
float flt;
// 假设已打开了名为"file.txt"的文件
FILE *fp = fopen("file.txt", "r");
if (fp != NULL) {
if (fscanf(fp, "%d %f", &num, &flt) == 2) { // 期望读取两个字段
// 成功读取,num现在包含了整数,flt包含了浮点数
printf("Read: Integer=%d, Float=%.2f\n", num, flt);
} else {
// 出错或未能成功读取完整行
perror("Error reading from file");
}
fclose(fp); // 关闭文件句柄
} else {
// 打开文件失败
perror("Failed to open file");
}
```
阅读全文