open()函数权限问题

jiangwei19900106 2013-05-12 12:59:47

int my_cp(const char* from_path, const char* to_path)
{
if(from_path == NULL || to_path == NULL)
{
return -1;
}

int from_fd, to_fd;

if(-1 == (from_fd = open(from_path, O_RDONLY)))
{
perror("open");
return -1;
}

if(file_exist(to_path))
{
if(-1 == (to_fd = open(to_path, O_WRONLY | O_TRUNC)))
{
perror("open");
close(from_fd);
return -1;
}
}
else
{
if(-1 == (to_fd = open(to_path, O_WRONLY | O_CREAT | O_TRUNC, 00777)))//这里创建的文件什么权限都没有。
{
perror("open");
fprintf(stderr, "open:%s\n",strerror(errno));
close(from_fd);
return -1;
}
}
if(cp_file(from_fd, to_fd))
{
unlink(to_path);
close(from_fd);
close(to_fd);
return -1;
}

close(from_fd);
close(to_fd);

return 0;
}

请大侠指点啊,忙活了半天不知道怎么回事
...全文
365 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
jiangwei19900106 2013-05-12
  • 打赏
  • 举报
回复
引用 1 楼 qq120848369 的回复:
啥权限问题?
解决了,自己马虎,程序上有个逻辑问题。谢谢回帖
qq120848369 2013-05-12
  • 打赏
  • 举报
回复
啥权限问题?

64,650

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧