曲径通幽论坛

标题: chdir,getcwd [打印本页]

作者: beyes    时间: 2009-2-12 16:37
标题: chdir,getcwd
在 shell 里用 cd 命令可以变换目录,在程序里用 chdir 系统调用达到同样的功能:
#include <unistd.h>
int chdir(const char *path);

一个程序可以确定当前的工作目录,通过调用 getcwd 函数来实现:
#include <unistd.h>
char *getcwd(char *buf, size_t size);

getcwd 函数把当前的目录名写到给定的缓冲区中--由参数 buf 指向。如果名字超出了缓冲区的限制(an ERANGE error)就会返回 NULL,而缓冲区的大小由参数 size 来指定。如果函数执行成功,就返回缓冲区指针 buf 。

加入目录被移除了(EINVAL)或者在程序运行时目录的权限被改变(EACCESS)了,getcwd 也可能会返回 NULL。




欢迎光临 曲径通幽论坛 (http://www.groad.net/bbs/) Powered by Discuz! X3.2