LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 591|回复: 2

求助:unix环境高级编程中的一个例子调不通

[复制链接]
发表于 2003-6-25 13:44:21 | 显示全部楼层 |阅读模式
我用cc编译通过,但是无法运行,系统显示segmentation fault。源程序如下,是unix环境高级编程中的一个例子,请大家帮忙看看。
#include <sys/types.h>
#include <dirent.h>
#include <stdio.h>

int main(int argc,char *argv[])
{
        DIR *dp;
        struct dirent *dirp;
        if (argc!=2)
                printf("a single argument (the directory name) is required");
        if ((dp=opendir(argv[1]))==NULL)
                printf("can't open %s",argv[1]);
        while ((dirp=readdir(dp))!=NULL)
                printf("%s\n",dirp->d_name);
        closedir(dp);
        exit(0);
}
发表于 2003-6-25 14:25:57 | 显示全部楼层
使用gdb调看哪里有问题
发表于 2003-6-25 14:33:09 | 显示全部楼层
你是不是没加命令行参数?
程序的两个if块里应该有exit
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表