诡异问题,明明是目录但返回值不是

踏实每一步 2011-09-19 04:57:11
struct stat st;
lstat("/usr/zjhc/fee/txt", &st);
logmodule.WriteLog("目录 %s 模式 %d",path,st.st_mode);
if(S_ISDIR(st.st_mode))
return 1
else
return 0;
/usr/zjhc/fee/txt这个确实是目录,用cd /usr/zjhc/fee/txt可以进入目录,但返回是0。
...全文
42 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
踏实每一步 2011-09-20
  • 打赏
  • 举报
回复
找到问题了。原来是字符后面多了个\r
justkk 2011-09-19
  • 打赏
  • 举报
回复
ls -ld /usr/zjhc/fee/txt

看看,不会是符号链接吧?
yifanernei 2011-09-19
  • 打赏
  • 举报
回复
如果txt是个链接的话,链接到一个目录
那么/usr/zjhc/fee/txt 就不是个目录,但是cd是可以的

这种情况下
lstat("/usr/zjhc/fee/txt/", &st)可以得到你想要的结果

23,117

社区成员

发帖
与我相关
我的任务
社区描述
Linux/Unix社区 应用程序开发区
社区管理员
  • 应用程序开发区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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