C++入门指南及实战 第二步 HelloWorld及扩展详解
回顾
在上一节中,我们编写了如下代码,完成了 HelloWorld程序的编写:
#include<iostream>
using namespace std;
int main(){
cout <<"Hello World";
return 0;
}
本小节将会对该代码进行讲解,并且解释一下专业名词。
释义
#include<iostream>
以上代码中,#include 表示引入一个头文件,头文件是一个“工具库”。当我们在编写代码时,往往会使用到一些功能,这些功能在某些头文件(工具库)中,这时通过#include这一串代码,就可以将指定的头文件(工具库)引入到当前编写的代码之中。
在 HelloWorld 程序中,需要完成的功能为在程序运行时,显示 HelloWorld、显示HelloWorld 需要使用的工具在 iostream 这个头文件中。因为#include的语法(指使用方法)为 #include<头文件名>,所以只需要将iostream 填写在尖括号中即可,写为 #include<iostream>
。
int main(){}
以上代码中 int main() 表示一个程序的入口,我们主要看main,int之后会详细说明。main函数整个程序只能存在一个,表示你这个程序的一个入口。计算机在执行你程序时,需要知道你程序时从哪开始的,这个main就表示你当前编写的程序要从哪里开始。main后面紧跟着一对圆括号()之后再一对花括号{},花括号内编写代码。
cout <<"Hello World";
以上代码是main入口括号中的第一句,cout表示输出,换句话说cout是显示的意思,之后两个 << 符号,紧接着是双引号加一串字符串"Hello World"。在C++中,a、b、c、d、?、【等单个字母或符号成为字符,组合在一起成为字符串,并且需要使用双引号引起来。在这里cout是显示字符串,语法为cout <<“你要显示的字符串”
,如果想显示 Hello World 就写为 cout <<"Hello World";
。
return 0;
此代码之后将会讲解。
using namespace std;
为了防止在不同的头文件中有相同的“工具”名称,使用 命名空间 来区分这些工具是哪个区域的。例如一个学校里面有3个人叫小明,分别是六年级一班有一个小明,六年级二班有一个小明,五年级一班也有一个小明。这些小明在操场上,校长点名,叫到小明时需要添加年级班别,不然三个小明都不知道叫谁,其中这个年就班别名就像命名空间,用这个区分是不同区域的同名角色。
以上 using namespace std;
表示使用命名空间 std,语法为 using namespace 命名空间名。(之后命名空间将会详细讲解)这样引入了这个命名空间则不需要使用如 std::cout 的方式使用这个个cout“工具”(我们把std当作一个区域名,cout表示这个工具)。我们可以删除 引入命名空间代码,然后使用 std::cout 方式输出:
#include<iostream>
int main(){
std::cout <<"Hello World";
return 0;
}
以上代码删除了std的话会报错,因为不知道你是要使用哪一个工具箱的cout输出工具:
如果想省略std::的话,在头文件下引入一个命名空间即可:
#include<iostream>
using namespace std;
int main(){
cout <<"Hello World";
return 0;
}
以上的代码结构为最上部为引入头文件,接着引入一个命名空间,下面是一个main入口,在入口的花括号中编写你想要实现的代码。这个结构并不是一个完整表示的结构,在接下来的学习中将会逐步了解这个过程。
简单的来说,在编写代码时,一般皆是使用系统提供的一些“指令”,这些“指令”成为关键字,例如 cout、main、namespace等,这些关键字都有特定的作用。这些关键字的固定使用“格式”,我们称之为语法。通过制定的语法进行代码编写,最终组成了程序,完成了我们的需求。
例如以上代码,我想把 Hello World 更改为 Hello Xiaoming,只需要更换显示内容即可。代码如下:
#include<iostream>
using namespace std;
int main(){
cout <<"Hello Xiaoming";
return 0;
}
最终是显示出我替换的内容:
编程提示
在C++的代码编写中,大多数语句的结尾需要使用分号表示结束。例如cout <<"Hello Xiaoming";
以及 return 0;
,这个是需要注意的。而且在编程中使用的特殊作用的标点符号必须是英文,很多初学者在这一步上会出现错误,迟迟得不到解决,这就是其中一个原因。并且在编写代码时,需要注意,程序要同一种风格形式进行对齐,这样会使程序清晰、可读性强,方便自己的排错和解读等。
知识点须知
本篇学习完后须了解以下知识点: 1.什么是头文件及头文件使用方式 2.命名空间及使用命名空间内的“工具” 3.什么是main?程序入口指什么 4.如何显示数据 5.大多数语句结束后使用什么表示结束 6.入口程序写在什么括号内
- 了解ASP.NET MVC几种ActionResult的本质:EmptyResult & ContentResult
- 可视化(番外篇)——SWT总结
- 新年必看!预测2018年将是区块链爆发的行情
- 探秘Tomcat(一)——Myeclipse中导入Tomcat源码
- 解决Myeclipse下Debug出现Source not found以及sql server中导入数据报错
- Hadoop阅读笔记(七)——代理模式
- 认识ASP.NET MVC的5种AuthorizationFilter
- 2017十大“最差”密码出炉
- SVG图形绘制入门第一弹
- 使用自定义标记来构建页面
- ASP.NET MVC集成EntLib实现“自动化”异常处理[实例篇]
- ASP.NET Core管道深度剖析(2):创建一个“迷你版”的管道来模拟真实管道请求处理流程
- 机器学习实战之决策树
- 初学ReactJS,写了一个RadioButtonList组件
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- Kafka核心API——Consumer消费者
- Kafka核心API——Producer生产者
- Linux Lab v0.5 正式发布,功能强大,用法简单
- Kafka核心API——AdminClient API
- PyQt5 技术篇-调用颜色对话框(QColorDialog)获取颜色,调色板的调用。
- Kafka的安装与配置
- PyQt5 技术篇-如何彻底删除控件?布局移除控件方法。
- PyQt5 技术篇-设置滚动条拉动位置,scrollArea滚动条位置设置方法。
- CentOS8更换yum源后出现同步仓库缓存失败的问题
- log4j配置方式
- 基于MHA搭建MySQL Replication集群高可用架构
- PyQt5 技巧篇-解决相对路径无法加载图片问题,styleSheet通过"相对"路径加载图片,python获取当前运行文件的绝对路径。
- 基于MMM搭建MySQL Replication集群高可用架构
- Python 技术篇-按任意格式灵活获取日期、时间、年月日、时分秒。日期格式化。
- 当删库时如何避免跑路