加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

c – 为什么我没有输出非常简单的Hello World程序?

发布时间:2020-12-16 05:34:19 所属栏目:百科 来源:网络整理
导读:我想知道为什么我的C程序不打印任何信息.我是100%的新兴编程人员,并且在过去几个星期内能够在 Ruby和 Python中学到一些东西,但是我无处可寻C的东西.这是总的基线,每个人都学习的简单的程序: #include stdio.hint main() { printf("Hello Worldn"); return
我想知道为什么我的C程序不打印任何信息.我是100%的新兴编程人员,并且在过去几个星期内能够在 Ruby和 Python中学到一些东西,但是我无处可寻C的东西.这是总的基线,每个人都学习的简单的程序:
#include <stdio.h>

int main()

    {
        printf("Hello Worldn");
        return 0;
    }

所以我已经写了,我保存为hello.c.现在我到目录,然后我尝试

gcc hello.c

没有任何反应 – 没有错误,什么也没有.如果我写的话

gcc hello.c -o hello

一个新的可执行文件被写入我的目录,当我打开它,它看起来像正常的命令行,并有“Hello World”写在那里,正如我预期在我的终端第一次.

我也试图让hello.c成为一个可执行文件,但是当我这样做的时候我会得到

syntax error near unexpected token `('
`int main()'

解决方法

当你输入
gcc hello.c

没有什么发生,这是可以预料的.或者更准确地说,GCC将编译一个具有默认名称的可执行文件,对我而言是a.out.如果我在命令行上键入./a.out,我会看到输出.

我认为这可能是一个稍微更大的概念问题,虽然从你的Ruby / Python背景. Ruby和Python是(通常)解释语言,这意味着当您创建脚本文件时,您可以将其标记为可执行文件,并通过some magic操作系统将启动一个读取文件并为您执行的程序.然而,C编译.因此,当您运行GCC时,它将使用您的源文件,并将其转换为可执行文件,使用默认或指定的名称.在这一点上,除非编译过程有问题,否则不会看到任何输出.然后,您可以运行./hello,它是一个可执行文件,并查看您的输出.

这也解释了为什么你不能将hello.c标记为可执行文件并运行它.它需要先编译成可执行文件.看起来系统假装它是一个shell脚本,这不是,并给你一个语法错误.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读