有一个包含4194304个以空格分开的0~255整数的TXT文档,用C语言fread函数将其中的每个整数存为字符串数组的元素
时间: 2024-05-02 07:18:16 浏览: 197
以下是示例代码:
```c
#include <stdio.h>
#include <stdlib.h>
#define FILENAME "data.txt"
#define MAX_NUM 4194304
int main(void) {
FILE *fp;
int i;
unsigned char *data = NULL;
// 打开文件
fp = fopen(FILENAME, "rb");
if (fp == NULL) {
printf("Failed to open %s.\n", FILENAME);
return 1;
}
// 分配空间
data = (unsigned char *)malloc(MAX_NUM * sizeof(unsigned char));
if (data == NULL) {
printf("Failed to allocate memory.\n");
return 1;
}
// 读入数据
fread(data, sizeof(unsigned char), MAX_NUM, fp);
// 输出数据
for (i = 0; i < MAX_NUM; i++) {
printf("%u ", data[i]);
}
// 释放空间
free(data);
// 关闭文件
fclose(fp);
return 0;
}
```
在这个示例中,我们首先定义了文件名和数组大小的常量。然后,我们打开文件,分配内存,使用fread函数读入数据,输出数据,释放内存并关闭文件。注意,我们使用了unsigned char类型来存储每个整数,因为它的范围是0~255,正好对应一个字节的范围。
阅读全文