第2章 C++编程入门
C++中的数据分为常量和变量。
2.1常量(Constants)
顾名思义,常量的值在程序中不能改变
Type of constant(常量数据类型) | integer:整型 | floating-point:浮点型(实型)| character:字符型 | string:字符串型
2.2变量(Variables)
变量的值可以改变,使用之前必须先定义(指定类型和名字)
变量名:C++的一种标识符,命名规则如下:
1.只能由字母、数字、下划线 组成,2.以字母或数字开头,
3.不是C++关键字,4.只能识别前31个字符,5.区别大小写;
2.3简单的屏幕输出
头文件#include<iostream>
cout<<用于向标准输出流对象输出字符串
endl(行结束)用于在屏幕上实现光标换行功能,相当于回车
2.4注释
//用于注释单行代码,也可以使用传统C风格注释,即/*开始到*/用于注释多行代码
通常,在程序开头都应该写一段注释,用于描述程序的功能、编程者、编程日期及其他相关信息,如版本号等
2.5数据类型
double:双精度实型
long integer:长整型
short integer:短整型
unsigned integer:关键字unsigned扩展了整型变量的正数范围
bool:布尔数据类型,只有true或false两个值,通常用1表示真,0表示假
2.6数据类型的大小
使用sizeof运算符来显示一些常见的数据类型在内存中占用的字节数。
示例:

运行结果:

2.7运算符
赋值运算符(=)用于给变量赋值
代数运算符(+、-、*、/、%)加、减、乘、除(整除)、取余
自增和自减运算符 (++、--)前缀形式 先加减后应用,后缀形式 先应用后加减
复合赋值运算符(+=、-=、*=、/=、%=)分别对应+、-、*、/、%这5种算术运算
2.8运算符优先级
1.乘除的优先级高于加减 ; 2.当运算符的优先级相同,根据结合性计算; 3.使用小括号改变运算的先后顺序

Unary minus :一元减运算符,与二元减运算符表示形式相同,放在操作数的前面,优先级最高,
可以看作负号(比如说-3×2-1,那就是先把负号给3,再运算,答案得-7,符合数学上的代数知识)
2.9类型转换和强转
自动转换:在进行混合类型运算时,C++ 自动将数据值转换, C++排名的数据类型按下面的顺序:

在进行混合类型运算时,C++ 自动将数据值从类型级别较低的一方向类型级别较高的一方转换。因为相对于级别较低的数据类型,级别较高的数据类型要占用更大的内存空间,因此,类型提升后不会导致数据信息的丢失,从而能够保存更精确的数据。相应地,类型的降级会导致数据信息的丢失,因为将数据赋值给较低类型的变量时,级别较低的数据类型没有足够的存储空间用来存储级别较高的数据。
手工转换:C++允许强制类型转换运算符进行手工的类型转换。

Programming pitfalls(易犯的错误)
1.不要在头文件/or/main()语句的行末添加分号;
2.C++中的每条语句都应以分号结束(注释除外);
3.键入错误可能导致一个语句什么都没有做,但不能否认其有效性;
4.在算术表达式中使用变量前,必须将其初始化;
6. 不确定运算符的优先级时,应使用小括号,且保证左右括号的个数相等;
7.每个变量都有一个关联的数据类型(int、float 等)一定不要让变量的值超出变量所能表示的范围;
8.避免不必要的、无意义的程序注释;
9.注意算数运算中除为整除,示例:
int a=100,b=8;
float r;
r=a/b;
此时结果为12
r=atatic_cast<float>(a)/b;
此时结果才为12.5。
快速语法参考


第2章 C++编程入门的更多相关文章
- Android 4 编程入门经典
这是一本入门级的经典教才从Android编程入门到发布Android应用程序,每一个章节都是讲得很透,让人轻松的接受. 第1章 Android编程入门 1.1 Android简介 1.1.1 Andr ...
- Oracle编程入门经典 第12章 事务处理和并发控制
目录 12.1 什么是事务处理... 1 12.2 事务处理控制语句... 1 12.2.1 COMMIT处理... 2 12.2.2 RO ...
- Oracle编程入门经典 第11章 过程、函数和程序包
目录 11.1 优势和利益... 1 11.2 过程... 1 11.2.1 语法... 2 11.2.2 建立或者替换... 2 11.2 ...
- C语言编程入门之--第四章C语言基本数据类型
导读:C语言程序中经常涉及一些数学计算,所以要熟悉其基本的数据类型.数据类型学习起来比较枯燥,不过结合之前的内存概念,以及本节的字节概念,相信数据类型也就不难理解了.本章从二进制的基本概念开始,然 ...
- Linux 利器- Python 脚本编程入门(一)
导读 众所周知,系统管理员需要精通一门脚本语言,而且招聘机构列出的职位需求上也会这么写.大多数人会认为 Bash (或者其他的 shell 语言)用起来很方便,但一些强大的语言(比如 Python)会 ...
- 译 - 第 1 章:EF入门
章节信息 Entity Framework 6 Recipes 第二版第一章: Chapter 1: Getting Started with Entity Framework ----------- ...
- COM编程入门第二部分——深入COM服务器
本文为刚刚接触COM的程序员提供编程指南,解释COM服务器内幕以及如何用C++编写自己的接口.继上一篇COM编程入门之后,本文将讨论有关 COM服务器的内容,解释编写自己的COM接口和COM服务器所需 ...
- PC游戏编程(入门篇)(前言写的很不错)
PC游戏编程(入门篇) 第一章 基石 1. 1 BOSS登场--GAF简介 第二章 2D图形程式初体验 2.l 饮水思源--第一个"游戏"程式 2.2 知其所以然一一2D图形学基础 ...
- 【浅墨著作】《OpenCV3编程入门》内容简单介绍&勘误&配套源码下载
经过近一年的沉淀和总结,<OpenCV3编程入门>一书最终和大家见面了. 近期有为数不少的小伙伴们发邮件给浅墨建议最好在博客里面贴出这本书的文件夹,方便大家更好的了解这本书的内容.事实上近 ...
随机推荐
- FastAPI(七十三)实战开发《在线课程学习系统》接口开发-- 回复留言
之前文章分享FastAPI(七十二)实战开发<在线课程学习系统>接口开发-- 留言列表开发,这次我们分享如何回复留言 按照惯例,我们还是去分析这里面的逻辑. 1.判断用户是否登录 2.用户 ...
- IDEA 2022.2.1 Beta 2发布:新增支持Java 18、增强JUnit 5的支持
近日,IDEA 2022.1的Beta 2版本发布了!下面我们一起来看看对于我们Java开发者来说,有哪些重要的更新内容. Java增强 随着Java 18的正式发布,IDEA也在该版本中迅速跟进.目 ...
- SpringBoot注解自动扫描-底层实现
分析上文Spring Boot快速入门 @SpringBootApplication public class HelloWorldApplication { public static void m ...
- window升级Nginx1.10到1.12.2
window升级Nginx较为简单,只需要修改配置文件,然后启动即可. 环境:window系统 服务器:10.123.98.92 Nginx目录:e:\hgeagle\nginx-1.10.1 旧版N ...
- VsCode 常用插件清单
插件离线安装说明 在一些内网开发环境中,无法做到在线安装,这个时候就需要对插件进行离线安装 了 打开 VSCode 插件市场网址 Extensions for the Visual Studio fa ...
- 帝国CMS模板$GLOBALS[navclassid]用法详解
帝国CMS模板程序扩展变量说明:通过这些变量可实现各种更复杂的显示格式. 一.列表/封面模板变量说明:(栏目页或专题页中使用) (一).当前栏目ID或专题ID:$GLOBALS[navclassid] ...
- 微信小程序 因文件大小不能使用本地背景图片解决方法
因微信文件只允许2m,所以不能给图片太多空间.所以出现背景图片的坑 解决方案1: 把背景图片放到服务器文件件下,直接将路径给url. 得是https开头的路径才可以 解决方案2:将图片转换成base6 ...
- es6 class解析
直入主题.源代码如下: class A{ aName = 'A' constructor(aAge){ this.aAge = aAge } static aStatic = 'aStatic' } ...
- GeoServer style中文乱码解决方法
在说明这个问题之前,有三点需要明确: 一是创建New style时,网页中文本框内的内容才是最终会应用到GeoServer的sld内容,这与本地sld文件没有关系. 二是xml的encoding定义的 ...
- Bugku练习题---Crypto---聪明的小羊
Bugku练习题---Crypto---聪明的小羊 flag:flag{6fde4163df05d900} 解题步骤: 1.观察题目,下载附件 2.根据题目描述,判断是栅栏密码,位移2位,白给题,上网 ...