我如何运行我的C程序?
我是C编程语言的新手。 我现在正在学习一门课程,但是我遇到了一个小问题,即运行该文件进行测试。
我打开了gedit并编写了这些代码行:
int main(int argc, char *argv[]) { puts("Hello world."); return 0; }
当我尝试使用此命令提供正确的权限后运行它
chmod +x file.c
并由此命令运行
./file.c
这些线路出现在终端
./file.c: line 1: syntax error near unexpected token `(' ./file.c: line 1: `int main (int argc, char *argv[])'
问题出在哪儿 ??
您需要先编译程序,然后才能运行它。 要做到这一点,你需要一个C编译器,比如gcc
。 您可以使用以下命令安装:
sudo apt-get install gcc
然后,要编译您的程序,创建一个名为file
的可执行file
:
gcc -Wall -o file file.c
那么你应该能够运行:
./file
Fabrice Bellard的TCC似乎仍在存储库中。 它可以在一种解释器模式下运行,这使得以下可能:
您可以通过添加行来创建一个像OP一样的简单C文件可执行文件
#!/usr/bin/tcc -run
到文件的最顶层。
它还通过在末尾添加一个空选项(只是减号-
)来接受来自STDIN的输入。
$ /usr/bin/tcc -run - < #include > int main() > { > printf("Hello World\n"); > return 0; > } > EOF Hello World
或者用echo
echo '#include
或者只需运行/usr/bin/tcc -run -
键入代码并使用CTRL + D
开始运行
似乎无用而愚蠢,但最后一种方法是最快的(对我来说,YMMV等)来检查大型库中的函数,查找常量的确切值等等。它很小(180k)使它成为一个非常适合例如Raspberry-Pi。
主要缺点:开发停止(最新版本是从2013年开始)。
AFAIK,你必须在执行之前编译C代码,如下所示:
gcc file.c
与python不同的C语言不是一种解释语言。 需要首先编译C源代码或简单地编写代码以使其可执行,即机器可读forms。 您必须首先使用命令编译它
cc -Wall filename.c
cc – GCC编译器
-Wall – 检查错误
filename.c – 使用.C扩展名保存C代码的文件。
您将在源代码的工作目录中获得名为“a.out”的可执行文件。
我有一个小问题,运行该文件
回答你的问题:
问题出在哪儿 ??
可以说你还没有运行可执行文件,因为你还没有生成它。 您的文件file.c
是用“C”语言编写的“源代码”。 这个源代码不是可执行的东西,因为C语言被设计成易于理解的方式可写(至少是人类标准的“简单”……即使这样,起初也不容易 – 但它变得更容易) 。 然后,您编写的(源)代码将转换为计算机可以轻松读取的表单。 此过程称为“编译”。 编译创建一个可由计算机执行的文件。 这是你尚未完成的步骤。 如果你输入
which gcc
你得到像/usr/bin/gcc
这样的东西,然后你的系统上已经安装了gcc。 如果你什么都没回来 – 那么你不要。 如果你没有gcc那么你可以通过以下方式获得gcc(假设你拥有正确的权限):
sudo apt install gcc
(注意:如果您使用的是Linux发行版的一些旧版本,apt可能无法正常工作 – 您可以使用apt-get
替换它)
如果你有gcc
那么请直接输入:
gcc file.c
你会发现一个名为a.out
的可执行文件已经神奇地出现在你的目录中。 这是您一直在寻找的文件。 运行它
./a.out
其他答案还有-o
和-Wall
等其他内容,您可以通过gcc
手册了解这些内容,您可以通过键入来访问:
man gcc
这应该让你坚持几年…欢迎编码 – 享受!