当前位置: 首页 > article >正文

对第一个C++程序的解析(C++入门)(hello world)

一、main函数

       main函数是程序的入口,C++的程序不管有多少行代码,都是从main函数开始执行的,main函数也被叫做:主函数。main前面的int表示main函数执行结束的时候返回一个整型类型的值,而在main函数的最后写的return 0,正好前后呼应。

        总结

        1、main函数是程序的入口

        2、main函数有且仅有一个

        3、一个项目中可以有多个.cpp文件,但是只能有一个main函数(因为程序的入口只能有一个)。

二、字符串 

        在 C ++中,使用单引号括起来一个字符,表示字符字面值,比如:'1','a'。使用双引号括起来多个字符表示一个字符串,比如:"abcdef","hello world",字符串中可以有一个或者多个字符"" 表示空字符串。上面代码中的 "hello world!" 就是一个字符串。

三、头文件

        前面的代码中,写的 #include <iostream>,就是在包含头文件,头文件的名字叫:iostream,使用 #include <> 的形式进行包含。iostream 文件中的 io (i 是 input ; o 是 output)指的是输入进入程序的信息,简单理解就是可以给程序输入数据)和输出从程序中输出的信息,简单理解就是程序会打印数据在屏幕上)。在 C++ 程序中要完成输入和输出的操作会涉及到 iostream 文件中的多个定义,所以就要包含这个头文件的。比如:代码中的 cout 是输出流对象,就是用来完成数据输出的,就需要包含头文件。

四、cin和cout初识

        cout << "hello world!" << endl; 这句代码在上面的程序中是最重要的代码,其他所有的代码都是为了编写这句代码。

        代码中的 cout 标准输出流对象 (针对控制台,也就是屏幕),其实还有标准输入流对象 (针对的是键盘) cin

        cout 是告诉程序把后面双引号中的内容打印到标准输出设备 (屏幕) 上,双引号中的内容可以替换的。

        cin cout全局的流对象cin 负责输入数据cout 负责输出数据

        endl 是 C++ 中一个特殊的操作符,效果是换行和刷新缓冲区,使用时必须包含在 iostream 头文件

        <<流插入运算符,和 cout 配合使用,>>流提取运算符,和 cin 配合使用,两者容易混淆,一定要仔细区分,不可混用。

        使用 C++ 输入输出更方便,不需要像 printf/scanf 输入输出时那样,需要手动控制格式。C++ 的输入输出可以自动识别变量类型

五、名字空间

        using namespace std; 这句代码的意思是:使用名字空间 std(名字空间也叫命名空间)。

        为了理解什么是名字空间,名字空间要解决什么问题,大家先看一下下面的例子:

        一个学校里学生可能有重名,假设这个学校有 3 个叫张三的同学,那么每次老师喊张三的时候,其他两个张三就会误会,是不是在喊自己,这就是因为这三个张三其实在同一个范围(空间)内的,就会名字的冲突。但是如果这个学校的学生分为三个班,分别是1班、2班、3班,把三个张三分别安排在不同的班级,那么老师以后喊:1班的张三,那么2班、3班的张三就不会误会了,这是不是就很好的解决了名字冲突的问题。其实这里的本质就是:1. 将名字进行了隔离,2. 在使用名字之前先交待使用哪个班级的名字。

        那么回到C++中,在 C++ 中,变量、函数和类都是大量存在的,这些变量、函数和类的名称如果都存在于全局作用域中,可能会导致很多冲突。使用名字空间的目的是对标识符的名称进行隔离,以避免命名冲突或名字污染namespace 关键字的出现就是针对这种问题的。

        std 是 C++ 标准库的名字空间名,C++ 将标准库的定义实现都放到这个命名空间中,当我们需要使用标准库中的内容时,就需要加上:using namespace std;当有了这句代码的时候,表示名字空间 std 中信息都是可见和可用的,比如:cin、cout、endl 等。

        当然直接使用 using namespace std; 是一种简单粗暴的做法,直接这样使用,就意味着后续在 std 这个名字空间中的各种定义都可以直接使用,但是我们往往只是使用部分。除此之外名字空间其实也可以这样使用:

        代码中的 std::cout 、std::endl的意思就是使用 std 名字空间中的 cout、endl。

        如果是在算法竞赛中,很显然,这样写太麻烦了,很耽搁时间,在比赛中时间就是生命啊。

        但是如果在企业中做软件开发基本上都这样写的,这样写更好的避免名字冲突的问题。

六、注释

        C++ 里主要有两种形式:单行注释 //多行注释 /* */

        注释是对代码进行解释的文字,放在代码中,但不会被编译。注释是给程序员自己(创作代码的人和阅读代码的人)看的,编译器会忽略注释,基于注释会被编译器忽略的这个特点,在代码中有些代码不再需要的时候可以使用注释的方式屏蔽。

        单行注释:指的是当前行不参与编译和运行

        多行注释:指的是被包含在内的多行不参与编译和运行。

        在 DevC++ 中

        注释和取消注释的快捷键:Ctrl + /

        编译的快捷键是F9。

        运行的快捷键是F10。

        编译+运行的快捷键是F11。


http://www.kler.cn/a/403163.html

相关文章:

  • 什么是GraphQL,有什么特点
  • 【单元测试】【Android】JUnit 4 和 JUnit 5 的差异记录
  • 基于RTEMS项目学习waf build system
  • 要素市场与收入分配
  • JDK1.8新增特性
  • 【算法】计算程序执行时间(C/C++)
  • 【Node.js】深入理解 V8 JavaScript 引擎
  • 捕捉页面的关键元素:用CSS选择器与Puppeteer自动抓取
  • Linux 查看磁盘空间使用情况
  • LeetCode93:复原IP地址
  • 【第八课】Rust中的函数与方法
  • 51c扩散模型~合集2
  • TypeScript进阶(一):变量及函数定义
  • 每日论文23-24ESSERC 6.4-16.1Ghz混合并联-串联谐振器
  • 静态时序分析--时序约束
  • SQL SELECT 语句:基础与进阶应用
  • JavaWeb——HTML、CSS与JS
  • 2411rust,76~79
  • 【Redis】持久化机制RDB与AOF
  • Makefile中的变量
  • 网络蠕虫病毒研究
  • Angular进阶之十一:从 Rxjs 获得的启发——改良方法传入参数的形式
  • Redis的过期删除策略和内存淘汰机制以及如何保证双写的一致性
  • C++面试基础知识:new vs malloc
  • 深入解析 Vue 3 中的 onShow 和 onHide 生命周期
  • 注解用于从 HTTP 请求中提取数据