《像计算机科学家一样思考C++》——1.5 第一个程序

本节书摘来自异步社区出版社《像计算机科学家一样思考C++》一书中的第1章,第1.5节,作者: 【美】Allen B. Downey , ,更多章节内容可以访问云栖社区“异步社区”公众号查看。

1.5 第一个程序

像计算机科学家一样思考C++
按照惯例,人们用新语言编写的第一个程序叫做“Hello World”。因为它所做的所有事情就是输出“Hello,World”。在C++中,这个程序是这样的:

#include <iostream.h>
// main: generate some simple output
void main ()
{
   cout << "Hello, world." << endl;
   return 0
}

有些人根据“Hello World”程序的简洁程度评判编程语言的质量。按照这个标准,C++做得相当不错。即便如此,这个简单的程序里依然包含着很难对编程新手解释的某些语言特性。现在,我们会先忽略其中一部分,比如第一行。

第二行以“//”开头,代表注释。注释是指在程序中插入的用于解释程序行为的一些文字。当编译器看到“//”时,它会忽略从该位置开始到行尾的整行内容。

第三行,你暂时可以忽略void,但是请注意main。main是指示程序入口点的特殊命名。当一个程序开始执行时,它从main中的第一条语句按顺序执行直到末尾,然后退出。

main中的语句数目没有限制,但是该例子只包含一条。这是一条基本的输出语句,表示在屏幕上输出或者显示一条消息。

cout是由系统提供的允许你把内容输出到屏幕的特殊对象。<<符号是一个操作符,表示将一个字符串应用于cout。这会使该字符串显示在屏幕上。

endl也是一个特殊符号,代表一行的结束。当发送endl给cout时,屏幕上的光标会移动到下一行。所以,当下一次输出时,新的内容会在下一行显示。

像所有语句一样,输出语句也是以分号结尾。

你还需要注意这个程序中的其他一些小符号。首先,C++使用花括号(“{”和“}”)对内容分组。在这种情况下,输出语句包含在花括号里,意味着它在main的定义内部。同时,注意语句的缩进,它可以直观地显示该定义的内部都有哪些行。

现在,你可以坐在电脑前自己编译并运行这个程序。具体实现的细节取决于你的编程环境,但是从现在开始,我假定你知道应该如何做。

如前所述,C++编译器对语法检查很严格。当你编写程序时出现任何错误,编译都很有可能不成功。比如,你拼写错了iostream,你可能会得到以下错误消息:

hello.cpp:1: oistream.h: No such file or directory
这一行包含大量隐蔽密集的信息,并不容易读懂。一个更友好的编译器可能会这样表述:

“hello.cpp源代码文件第一行,尝试引用头文件oistream.h。找不到该文件,只找到文件iostream.h。这是否可能是你需要的?”

遗憾的是,很少有编译器这么友好。编译器并不智能,大多数情况下你得到的错误消息只是一个关于错误的提示。学会解析编译器的消息需要花一些时间。

尽管如此,编译器依然是学习语言语法规则的有力工具。从一个可以正常运行的程序入手(比如hello.cpp),用不同的方法修改它并查看结果。如果你得到错误消息,记住错误消息的内容以及导致错误的原因,这样下次再看到的时候就能够知道它是什么意思。

本文仅用于学习和交流目的,不代表异步社区观点。非商业转载请注明作译者、出处,并保留本文的原始链接。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值