1

我正在用lsC 编写用户命令代码。当我用 编译此代码时cc lss.c,会创建一个a.out文件,但随后使用./a.out它运行时,出现错误。

我的lss.c

#include <stdio.h>
#include <stdlib.h>

int main(int argc, char *argv[])
{
    char cmdline[100];
    if ( argc > 2 )
    {
        printf(cmdline, "ls %s %s", argv[1], argv[2]);
        system(cmdline);
    }
    return 0;
}

当我编译并运行时,会发生以下情况:

$ cd "/media/dilip/New Volume1/c"
$ cc lss.c
$ ./a.out
bash: ./a.out: Permission denied
$

这个错误的原因是什么?

4

2 回答 2

5

我认为,您正试图在 NTFS 分区上运行您的程序,这与安装 Mint 的分区不同。尝试在您的 ext4 分区中编译程序并在那里生成 a.out。它应该运行。

于 2013-08-12T13:36:02.137 回答
0

在安装 linux 的卷上编译并运行它。

于 2014-11-04T03:14:11.920 回答