C++ Primer Plus学习:第二章
C++入门第二章:开始学习C++
进入C++
首先,以下是一个C++程序:
//myfirst.cpp 显示一行文字
#include<iostream> //预处理器编译指令
int main() //函数头
{
using namespace std; //编译指令
cout<<"学习C++"; //显示消息
cout<<endl; //开始下一行
cout<<"你不会后悔!"; //更多输出
return 0; //返回值
}
从以上的程序中我们可以知道C++程序的组成部分
- 注释。
- 预处理器编译指令#include
- 函数头:int main()
- 编译指令:use namespace
- 函数体:使用{和}括起来。
- cout等显示消息的语句。
- 结束main()函数的return语句。
我们分别说明其中的几个:
main()函数
C++中main()函数的定义以函数头int main()开始。
int main()表示main()函数可以给调用它的函数一个整数返回值,且不从调用它的函数那里获取任何信息。
main():经典C开头。
int main(void):无返回值。
void main():可能出错。
注释
/**/多行注释。
//单行注释。
cout进行C++输出
例如下列语句:
cout<<"Come up and C++ me some time.";
双括号括起的是要打印的消息。
<<表示该语句把这个字符串发送给cout;该符号指出了信息流动的路径。
cout是一个预定义的对象,知道如何显示字符串、数字和单个字符。
(1)控制符endl
例:cout<<endl;
endl:表示重起一行。将屏幕上的光标移动到下一行的开头。
例:cout<<"学习C++"<<endl;
即:cout<<"学习C++";
cout<<endl;
(2)C++源码的格式化
C++中分号表示结尾,一条语句可以跨多行,多条语句可在同一行。但是不能把空格、制表符和回车放在元素(比如名称)中间,也不能把回车放在字符串中间。但是C++11标准中字符串可包含回车。
C++中不可分割的元素叫做标记,通常,必须用空格、制表符或回车将两个标记分开。
(3)C++源码风格
编程时,最好应遵循以下规则
- 每条语句占一行。
- 每个函数都有一个开始花括号和结束花括号,两个花括号各占一行。
- 函数中的语句都相对于花括号进行缩进。
- 与函数名称有关的圆括号周围没有空白。
C++语句
cout新花样
cout打印变量时,能够识别变量类型并输出变量值。
其他C++语句
类简介
类是C++面向对象编程的核心概念之一。
类是用户定义的一种数据类型。要定义类,需要描述它能够表示什么信息和他可以对数据执行哪些操作。类定义描述的是数据格式及其用法。
注:类描述了一种数据类型的全部属性(包括可使用它执行的操作),对象是根据这些描述创建的实体。
函数
- 函数分为有返回值和无返回值两种类型。
- 函数特性:有函数头和函数体;接受一个参数;返回一个值;需要一个原型。
2 总结
C++程序有一个或多个被称为函数的模块组成。程序从main()函数开始执行。函数有函数头和函数体组成。函数头指出函数的返回值(若有)的类型和函数期望通过参数传递给它的信息类型。
C++语句大致分为六种:
- 声明语句:定义函数中使用的变量名称和类型。
- 赋值语句:使用赋值运算符给变量赋值。
- 消息语句:将消息发送给对象,激发某种行为。
- 函数调用:执行函数,被调用的函数执行完毕后,程序返回到函数调用语句后面的语句。
- 函数原型:声明函数的返回类型、函数接受的参数数量和类型。
- 返回语句:将一个值从被调用的函数那里返回到调用函数中。
类是用户定义的数据类型规范,详细描述了如何表示信息以及可对数据进行的操作。对象时根据类规范创建的实体,就像简单变量时根据数据类型描述创建的实体一样。
C++提供了两个用于处理输入输出的预定义对象cin和cout,他们是istream和ostream类的实例,他们是在文件iostream中定义的。
C++ Primer Plus学习:第二章的更多相关文章
- oracle学习 第二章 限制性查询和数据的排序 ——03
这里.我们接着上一小节2.6留下的问题:假设要查询的字符串中含有"_"或"%".又该如何处理呢? 開始今天的学习. 2.7 怎样使用转义(escape)操作符 ...
- 《C Primer Plus》- 第二章 C语言概述
本笔记写于2020年1月27日. 本系列文章参考的是<C Primer Plus>(第六版),其中里面会有笔者自己的相关补充. 以下示例均运行于macOS Catalina 10.15.2 ...
- C++primer拾遗(第二章:变量和基本类型)
这是我对c++primer第二章的一个整理总结,算是比较适用于我自己吧,一小部分感觉不用提及的就省略了,只提了一下平时不注意,或者不好记住的内容. 排版太费劲了,直接放了图片格式.从自己的oneNot ...
- Asp.Net MVC4 + Oracle + EasyUI 学习 第二章
Asp.Net MVC4 + Oracle + EasyUI 第二章 --使用Ajax提升网站性能 本文链接:http://www.cnblogs.com/likeli/p/4236723.html ...
- Ruby学习-第二章
第二章 类继承,属性,类变量 1.如何声明一个子类 class Treasure < Thing 这样Thing类中的属性name,description都被Treasure继承 2.以下三种方 ...
- Java基础知识二次学习-- 第二章 基础语法与递归补充
第二章 基础语法与递归补充 时间:2017年4月24日10:39:18 章节:02章_01节,02章_02节 视频长度:49:21 + 15:45 内容:标识符,关键字与数据类型 心得:由字母,下 ...
- C#高级编程 (第六版) 学习 第二章:C#基础
第二章 基础 1,helloworld示例: helloworld.cs using System; using System.Collections.Generic; using System.Li ...
- Struts2框架学习第二章——Struts2下的HelloWorld
本章要点 — Struts 2的下载和安装 — 纯手工创建一个Web应用 — 纯手工创建一个Struts 2应用 — 实现Struts 2的Action — 配置Struts 2的Action — ...
- C语言学习第二章
今天开始学习常量,变量,基本数据类型,printf()函数和scanf()函数,算术运算符. 首先常量:是在程序中保持不变的量 变量:编写程序时,常常需要将数据存储在内存中,方便后面使用这个数据或者修 ...
- Python 学习第二章
本章内容 数据类型 数据运算 表达式 if ...else 语句 表达式 for 循环 表达式 while 循环 一.数据类型 在内存中存储的数据可以有多种类型. 在 Python 有五个标准的数据类 ...
随机推荐
- 简易高效的Delphi原子队列
本文提供Delphi一个基于原子操作的无锁队列,简易高效.适用于多线程大吞吐量操作的队列. 可用于Android系统和32,64位Windows系统. 感谢歼10和qsl提供了修改建议! 有如下问题: ...
- Python学习:19.Python设计模式-单例模式
一.单例模式存在的意义 在这里的单例就是只有一个实例(这里的实例就像在面向对象的时候,创建了一个对象也可以说创建了一个实例),只用一个实例进行程序设计,首先我们可以了解一下什么时候不适合使用单例模式, ...
- pow函数(数学次方)在c语言的用法,两种编写方法实例( 计算1/1-1/2+1/3-1/4+1/5 …… + 1/99 - 1/100 的值)
关于c语言里面pow函数,下面借鉴了某位博主的一篇文章: 头文件:#include <math.h> pow() 函数用来求 x 的 y 次幂(次方),x.y及函数值都是double型 , ...
- 20155311《Java程序设计》实验五(网络编程与安全)实验报告
20155311<Java程序设计>实验五(网络编程与安全)实验报告 一.实验内容及步骤 任务一: 编写MyBC.java实现中缀表达式转后缀表达式的功能 编写MyDC.java实现从上面 ...
- 解读python手册的例子a, b = b, a+b
Python手册上有个例子,用于输出10以内的斐波那契序列.代码如下: a, b = 0, 1 while b < 10: print(b) a, b = b, a+b 用到了一些Python的 ...
- 【JUC源码解析】CyclicBarrier
简介 CyclicBarrier,一个同步器,允许多个线程相互等待,直到达到一个公共屏障点. 概述 CyclicBarrier支持一个可选的 Runnable 命令,在一组线程中的最后一个线程到达之后 ...
- Hibernate5使用注解方式(转)
用Hibernate5使用映射文件时存在一个问题没有解决,在映射文件中配置了student_sequence,但找不到映射文件自增长的序列的sequence(Oracle)数据库. 输出的是 Hibe ...
- Angular开发者手册重点翻译之指令(一)
创建自定义的指令 这个文章将解释什么需要在自己的angularjs应用中创建自己的指令,以及如何实现它. 什么是指令 在高的层面上讲,指令是DOM元素中的标记(例如一个属性,一个节点名,注释或者CSS ...
- Ubuntu设置DNS服务
有时候安装完Ubuntu系统,源换好好还是不能更新,软件也不能下, 配置好IP,ping 1.1.1.1是通的,ping 域名就不通了,这是没有DNS解析域名的结果 一.Server版: 对于Ubun ...
- Python不生成HTMLTestRunner报告-转载学习
1.问题:Python中同一个.py文件中同时用unittest框架和HtmlReport框架后,HtmlReport不被执行. 2.为什么?其实不是HtmlReport不被执行,也不是HtmlRep ...