尝试运行已编译的程序时出现“bash:./cents:不存在这样的文件或目录”

尝试运行已编译的程序时出现“bash:./cents:不存在这样的文件或目录”

有人能解释一下为什么会发生这种情况吗?它可以很好地编译程序,但它不允许我运行它。我在 ubuntu 16.04 上

附加问题:如何在 Geany 上运行数学库?我喜欢这个界面,但不知道如何运行 math.h 头文件。

代码如下:

在此处输入图片描述

答案1

首先,使用 gcc 开关 -c 告诉编译器只编译而不链接,这样不会生成可执行二进制文件。要获取可执行二进制文件,您不需要使用此开关。正确的命令应该是:

gcc cents.c

但是,由于此命令未指定输出文件名,因此二进制文件将使用默认名称 a.out,因此您可能需要使用此命令:

gcc cents.c -o cents

这将生成一个名为 cents 的可执行二进制文件,然后可以使用

./cents

至于您的另一个问题,您不会运行头文件,这不是它们的用途,头文件是源代码文件,与 .c 相同,只是它们的工作是由 c 预处理器处理。通常,它们用于包含库的函数原型,以确保在整个项目中使用相同的定义,即使以后函数需要更改原型,这也有助于在程序中进行更改时最大限度地减少错误和由此产生的错误,因为在大型项目中,更改定义时有人丢失源文件的风险很高。

相关内容