张贴者
加农11我们有基础。
我们知道输入或输出意味着什么。
当我们被告知进行编译时,我们不会感到困惑。
现在该做一些编程了!
在每种语言中,都有一个程序定义所有语法基础,同时显示友好,热情的信息,以鼓励新手程序员继续前进。 这个程序叫做Hello World,就在这里!
#include <iostream> // Line 1
using namespace std; // Line 2
int main() { // Line 3
cout << "Hello, World!" << endl; // Line 4
return 0; // Line 5
} // Line 6
/* Output
Hello, World!
*/
*嗅** ...每次都会让我流泪...好吧,足够的哭泣。
这是什么意思呢?
让我们一次一行。
第1行:此行告诉编译器您要在iostream.h下包含文件-头文件。 iostream是用于输入/输出流的计算机对话。 这意味着您的程序现在可以识别与输入和输出有关的所有功能和命令。 由于所有程序都需要输入/输出,因此这一行(也称为语句)至关重要。
第2行:这将与第4行一起进行解释。现在,只需满足于没有这一行,编程就会变得非常令人沮丧的知识。
第3行:这称为函数标头。 它告诉编译器此大括号“ {”和下一个大括号“}”之间的所有内容均是函数main的一部分。 此外,此函数“返回”一个整数(int)。 当您创建自己的函数时,括号“()”更有用,但这是可以的。
第4行:啊...第一个执行某项操作的语句! 这就是告诉计算机显示单词“ Hello,World!”的原因。 这是用cout完成的。 cout代表Common OUTput-默认情况下,监视器是您的默认输出。 cout后跟两个大括号“ <<”,它们告诉编译器输出的内容如下。 “你好,世界!” 是一些必须用引号引起来的文本。 请务必关闭所有引号! 否则,计算机将不知道何时停止阅读文本以进行输出。 最后,我们有了endl,它告诉计算机将任何进一步的输出放在下一行。
这是2号线派上用场的地方。 cout和endl是已经定义的设备-我们尚未定义它们。 但是我们确实必须告诉计算机将它们包括在内。 cout和endl以及其他一些基本内容都包含在一组对象(称为名称空间)中。 这些碰巧位于其中的命名空间称为std或标准。
如果不告诉计算机我们正在使用std,我们将不得不输入更多内容。 第4行将变为
std::cout << "Hello, World!" << std::endl;
这很丑。
这行的最后一件事是分号。
之前,我将代码行称为语句。
每个语句就像一个英语命令。
用英语,我可以说:“跑一圈。做50次俯卧撑。说“我爱你。”再跑一圈。”
您知道如何根据句点所在的位置分隔命令。
同样,计算机知道如何根据分号的位置分隔我的语句。
如果没有分号,计算机可能会认为第4行和第5行都是同一条语句的一部分,这会使事情变得混乱。
第5行:这是函数main的最终声明。 这是我们返回值的地方。 我们将编写的大多数函数都有自己的特殊个性化返回值,但是main()只有2个返回值。 如果我们返回0,则计算机将知道一切运行良好。 一切都很好...但是,如果我们返回1,计算机将知道出了点问题。 例如,假设您要求用户输入1到10之间的数字。很酷。 但是,如果用户键入56怎么办? 好吧,那不在1到10之间,所以程序不会像我们所想的那样运行! 在这种情况下,最好返回1以让计算机知道我们已经完成了,但是事情并没有按计划进行。
第6行:末尾括号,与第3行中打开的括号相对应。这使计算机知道此之后的任何代码都不与main()关联。
我们结束之前的最后一点:编译器不在乎我的代码是否易于阅读。 从技术上讲,我可以将该程序重写为
#include <iostream>
using namespace std;
int main() { cout << "Hello World! << endl; return 0; }
要么
#include <iostream>
using namespace std;
int main()
{
cout << "Hello World! << endl;
return 0;
}
但是,哪个最容易阅读?
我的风格称为缩进-我使用空格让您知道哪些语句属于哪个块。
现在可能不太难理解,但请考虑以下几点:
int main() {
block1 {
anotherBlock {
block3 {
statements;
}
moreStatements;
}
finalStatement;
}
return 0;
}
很难说moreStatements属于哪个块,对吗?
很难读!
但是如果我这样写
int main() {
block1 {
anotherBlock {
block3 {
statements;
}
moreStatements;
}
finalStatement;
}
return 0;
}
这和以前一样完全一样,但是更容易阅读,对吧?
您特定的缩进样式可能会有所不同-例如,将'{'符号放在int main()之后的行中,而不要放在同一行中。
但这不会改变程序的运行方式,只会改变您的代码对他人的可读性。
发展自己的风格,借用我的,没关系。
请使用一些使它清晰易读的东西,以便我阅读!
直到下一次,程序员才会让我们学到更多有关输出的知识,并为自己做一些练习!
From: https://bytes.com/topic/c/insights/738839-class-2-hello-world-all-right-lets-do
本文深入解析C++经典入门程序HelloWorld,逐行解读代码意义,介绍编译原理及输入输出流概念,适合初学者理解C++基本语法。

被折叠的 条评论
为什么被折叠?



