下面是一个C语言示例,用于获取指定文件的大小。这个程序使用了标准C库中的文件操作函数。
#include <stdio.h>
#include <stdlib.h>
// 函数声明
long getFileSize(const char *filePath);
int main() {
// 指定要获取大小的文件路径
const char *filePath = "example.txt";
// 调用函数并打印文件大小
long fileSize = getFileSize(filePath);
if (fileSize == -1) {
printf("无法获取文件大小。\n");
} else {
printf("文件 %s 的大小为:%ld 字节\n", filePath, fileSize);
}
return 0;
}
// 获取文件大小的函数实现
long getFileSize(const char *filePath) {
FILE *file = fopen(filePath, "rb"); // 以二进制读模式打开文件
if (file == NULL) {
// 如果文件打开失败,返回-1
return -1;
}
// 移至文件末尾
fseek(file, 0, SEEK_END);
// 获取当前位置,即文件大小
long fileSize = ftell(file);
// 关闭文件
fclose(file);
return fileSize;
}
这个示例程序首先包含了必要的头文件,然后定义了一个`getFileSize`函数来获取文件大小。在`main`函数中,我们指定了要检查的文件路径,并调用了`getFileSize`函数。函数内部,它尝试以二进制读模式打开文件,并检查是否成功。如果成功,它使用`fseek`函数将文件指针移动到文件末尾,并使用`ftell`函数获取当前位置(即文件大小)。最后,它关闭文件并返回文件大小。如果文件无法打开,则函数返回-1。