C语言lseek函数实现给定一个文件,计算它的大小并打印出来
时间: 2024-02-04 14:04:10 浏览: 167
在C语言中,可以使用lseek函数来实现获取文件大小的功能。具体步骤如下:
1. 打开文件,使用open函数,需要传入文件名和打开方式,例如:
```
int fd = open("filename.txt", O_RDONLY);
```
2. 检查文件是否打开成功,如果fd为-1,则说明打开失败,例如:
```
if (fd == -1) {
printf("文件打开失败!\n");
return 0;
}
```
3. 定位到文件末尾,使用lseek函数,将文件指针移动到文件末尾,例如:
```
off_t size = lseek(fd, 0, SEEK_END);
```
4. 关闭文件,使用close函数,释放文件描述符,例如:
```
close(fd);
```
完整代码如下:
```c
#include <stdio.h>
#include <fcntl.h>
#include <unistd.h>
int main() {
int fd = open("filename.txt", O_RDONLY);
if (fd == -1) {
printf("文件打开失败!\n");
return 0;
}
off_t size = lseek(fd, 0, SEEK_END);
close(fd);
printf("文件大小为:%ld字节\n", size);
return 0;
}
```
注意:需要替换filename.txt为实际文件名。
阅读全文