第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编程入门>一书最终和大家见面了. 近期有为数不少的小伙伴们发邮件给浅墨建议最好在博客里面贴出这本书的文件夹,方便大家更好的了解这本书的内容.事实上近 ...
随机推荐
- Linux上部署net6应用
前言 .net6都出来了,作为一名.net搬砖工却一直都在windows下部署应用,还未尝试过linux环境下部署应用.参考福禄网络研发团队的相关博客,学习一下如何将应用部署到linux系统. . ...
- Vue整合Quill富文本编辑器
Quill介绍 Quill是一款开源的富文本编辑器,基于可扩展的架构设计,提供丰富的 API 进行定制.截止2021年1月,在github上面已有28.8k的star. Quill项目地址:https ...
- JavaScript 数组(Array)对象的方法
JavaScript 数组(Array)对象的方法 concat() 描述:用于连接两个或多个数组.该方法不会改变现有的数组,而仅仅会返回被连接数组的一个副本. 原型:arrayObject.conc ...
- ubuntu下安装typora、pycharm、搜狗拼音、MySQL、docker
安装typora # or run: # sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys BA300B7755AFCFAE ...
- MySQL 的发展历史和版本分支
时间和里程碑 想查看之前的版本可以从这里找到mysql4,5,8等版本http://mirrors.sohu.com/mysql/下面简单回顾下相关的一些版本信息1996 年 MySQL 1.0 发布 ...
- 基于easyx的小时钟
#include <graphics.h> #include <math.h> #include <conio.h> #define PI 3.141592654 ...
- Python Json分别存入Mysql、MongoDB数据库,使用Xlwings库转成Excel表格
将电影数据 data.json 数据通过xlwings库转换成excel表格,存入mysql,mongodb数据库中.python基础语法.xlwings库.mysql库.pymongo库.mongo ...
- 解决windows下WslRegisterDistribution failed with error: 0x80070050的问题
最近升级了老电脑的windows10的系统,发现wsl2里面安装的ubuntu20.04不能在windows terminal正常启动了(我之前是把ubuntu20.04作为默认启动终端的.) 涉及报 ...
- redis支持的5种数据类型
Redis 支持的数据类型:string(字符串).list(列表).hash(字典).set(集 合),zset(有序集合).以下key均为1,此些命令均可直接在redis-cli.exe中执行 s ...
- myeclipse10的问题
1.导入项目后java文件头部出现The type java.lang.CharSequence cannot be resolved. It is indirectly referenced fro ...