导航:首页 > 文件教程 > c语言文件定位

c语言文件定位

发布时间:2023-07-30 18:07:23

『壹』 c语言中如何得到当前文件所在位置

如果是通过open方式打开的,那么第一个参数就是文件路径信息:
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
int open(const char *path, int oflag, /* mode_t mode */...);

如果是通过fopen方式打开的,那么第一个参数就是文件路径信息:
#include <stdio.h>
FILE *fopen(const char *filename, const char *mode);

无论通过open还是fopen打开文件,都必须先知道文件路径信息,尽管可能是相对路径。
如果知道了filename的内容,我们就可以定位它的绝对路径,也就是你说的完全路径。

1. filename本身就是绝对路径,ok。
2. filename是相对路径,那么先通过getcwd获取进程的执行路径,然后再获取绝对路径即可。
#include <unistd.h>
extern char *getcwd(char *buf, size_t size);

但是,如果进程在打开文件后又执行了chdir、fchdir之类函数的话,估计就不能够再获取文件路径信息了。
#include <unistd.h>
int chdir(const char *path);
int fchdir(int fildes);

『贰』 C语言文件问题fseek定位

fseek
语法:
#include <stdio.h>
int fseek( FILE *stream, long offset, int origin );
函数fseek()为给出的流设置位置数据. origin的值应该是下列值其中之一(在stdio.h中定义):
名称 说明专
SEEK_SET 从文件的开始处开始搜索属
SEEK_CUR 从当前位置开始搜索
SEEK_END 从文件的结束处开始搜索
fseek()成功时返回0,失败时返回非零. 你可以使用fseek()移动超过一个文件,但是不能在开始处之前. 使用fseek()清除关联到流的EOF标记.

阅读全文

与c语言文件定位相关的资料

热点内容
数控机床常用的编程方法有哪些 浏览:467
铁路与大数据分析产生什么结果 浏览:572
如何把文件转为种子 浏览:59
玩股票杠杆用什么app 浏览:999
怎么用q币充qq红包 浏览:140
海外代购app哪个比较好 浏览:729
手机改qq密码怎么改 浏览:238
api压缩文件夹 浏览:847
网络营销中营销策略都有哪些 浏览:926
mat格式文件数据类型 浏览:132
手机文件删除如何恢复 浏览:682
如何计算带有指数的数据 浏览:243
手机数据存储在主板的哪里 浏览:151
什么网站物品最实惠 浏览:361
win7自带截图工具不能用 浏览:939
javamail发送html邮件 浏览:682
穿越火线枪战王者游戏录制在哪个文件夹 浏览:10
cad图复制到另一个cad文件标注变形 浏览:198
腾讯大数据平台部属于哪个群 浏览:350
电极自动编程哪个软件好用 浏览:550

友情链接