C++---变量、数据类型和运算符
内存
- 计算机使用内存来记忆或存储计算时所使用的的数据.
- 计算机执行程序时, 组成程序的指令和程序所操作的数据都必须存放在某个地方, 而这个地方就是计算机的内存, 也称为主存, 或随机访问存储器(RAM).
变量
变量是计算机中一块特定的内存空间, 由一个或多个连续的字节组成
不同数据存入具有不同内存地址的空间, 且相互独立.

变量的命名规则
通过变量名可以简单快速的找到内存中存储的数据
C++中变量的命名规则
变量名只能由字母 下划线 数字三种字符组成
变量名的第一个字符必须是字母或下划线, 不能是数字
变量名不能包含除下划线以外的任何特殊字符, 如
%#逗号等变量名不能使用保留字
变量名不要使用拼音
变量名尽量不使用单个英文单词, 提倡使用含有正式含义的英文单词
数据类型

常用数据类型

注意: 字符型char 实际属于整型int.
定义初始化变量
//声明变量 数据类型 变量名;
int num;
//定义时初始化变量 数据类型 变量名 = 值;
int num = 10;
//定义后初识化变量 数据类型 变量名; 变量名 = 值;
int num;
num = 10;
//float, 占4个字节, 6~7为有效数字, 不精确, 有误差
//float类型变量赋值时建议在数值的末尾加一个f
//声明及初始化
float flowerPrice = 150.0f;
//练习---已知圆柱体的半径和高, 求体积
#include <iostream>
#include <iomanip> //使用setprecision时需要的头文件
using namespace std;
int main()
{
cout << fixed; //正常显示浮点数, 而不是以科学计数法的方式
cout << setprecision(2); //控制浮点数显示的精度
double r, h;
cout << "请输入圆柱体的半径: " << endl;
cin >> r;
cout << "请输入圆柱体的高: " << endl;
cin >> h;
double v = 3.14 * r * r * h;
cout << "圆柱体的体积为: " << v <<endl;
}
常用ASCII码

常用转移字符

输入输出
#include <iostream>
#include <iomanip>
using namespace std;
int main()
{
double attack1 = 896;
double attack2 = 678;
double attack3 = 482;
cout << left; //左对齐
cout << setfill('*'); //指定填充
cout << setw(8) << attack1 <<
setw(8) << attack2 <<
setw(8) << attack3 << endl;
}
运算符
算数运算符
一元运算符: ++ --
二元运算符: + - * % /
i++和++i的区别
- i++是用原值参与表达式的运算, 运算之后再加1
- ++i是在运算之前加1, 再参与表达式的运算
关系运算符
关系运算符可以比较大小 , 高低, 长短, 有>, <, >=, <=, ==, !=
逻辑运算符
| 运算符 | 表达式 | 解释 |
|---|---|---|
| && 且 | 条件1 && 条件2 | 两个条件同时为真时, 结果为真 |
| || 或 | 条件1 | 两个条件有一个为真时, 结果为真 |
| ! 非 | !条件 | 条件为真时, 结果为假 条件为假时, 结果为真 |
位运算符
| 运算符 | 解释 | 示例 |
|---|---|---|
| & | 按位与 | 两个操作数都为1时结果为1 |
| | | 按位或 | 两个操作数只要有一个为1, 结果就为1 |
| ~ | 按位取反 | 操作数为1, 结果为0; 操作数为0, 结果为1 |
| ^ | 按位异或 | 两个操作数相同, 结果为0; 两个操作数不同, 结果为1 |
| << | 左移 | 右侧空位补0 |
| >> | 右移 | 左侧空位补符号位 |
注意: 负数的二进制以补码表示
- 原码: 按照绝对值大小转化成二进制数
- 反码: 将二进制数按位取反
- 补码: 反码加1
sizeof运算符
- sizeof运算符可以获得数据类型占用内存空间的大小
- 单位是字节
sizeof(char) 1
sizeof(short) 2
sizeof(int) 4
sizeof(long) 4
sizeof(long long) 8
sizeof(float) 4
sizeof(double) 8
sizeof(long double) 12
运算符优先级
- 单目运算符, 包括 ! , ~, ++, --, sizeof, 优先级别高
- 优先级别最低的是赋值运算符
- 可以通过 () 控制表达式的运算顺序, () 的优先级别最高
- 从右向左结合性的只有赋值运算符, 三目运算符合单目运算符
- 算术运算符 > 关系运算符> 逻辑运算符
类型转换
自动类型转换
把表示范围小的类型的值转换到表示范围大的类型的值
short -> int -> long -> float -> double
强制类型转换
语法: (类型名) 变量名;
类型名(变量名);
C++---变量、数据类型和运算符的更多相关文章
- Java1变量数据类型和运算符
day02_变量数据类型和运算符 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 public class jh_01_数据类型说明 { public ...
- Java历程-初学篇 Day02变量,数据类型和运算符
一,数据类型 1,基础数据类型 整型 byte short int long 浮点型 float double 字符型 char 布尔类型 boolean 2,引用类型 String 字符串型 二,变 ...
- JavaSE-02 变量 数据类型和运算符
学习要点 掌握变量的概念 掌握常用数据类型 掌握赋值运算符.算术运算符 掌握boolean数据类型和关系运算符 掌握变量的概念 面向过程程序的定义 程序的定义:程序=数据+算法+文档 程序要操作的数据 ...
- java2变量数据类型和运算符
public class jh_11_加加减减运算符 { public static void main(String[] args) { int a = 5,b =2 ; a ++;// 对自身 ...
- Java 第二章 变量、数据类型和运算符
第二章 变量.数据类型和运算符 什么是变量: 变量代表一块内存区域,变量类型不一样,这一块内存的大小也不一样. #在编程语言里面,你可以通过定义变量,向内存里添加数据或者修改内存已有的数据. ...
- Java中的变量,数据类型和运算符
变量,数据类型和运算符 1.变量是一个数据存储空间的表示,它是储存数据的基本单元. 如何理解这句话,下面用一个表格可以形象的表达: 变量与房间之间的对应关系 房间名称 变量名 房间类型 变量类型 入住 ...
- 使用 JavaScript 中的变量、数据类型和运算符,计算出两个 number 类型的变量与一个 string 类型的变量的和,根据 string 类型处于运算符的不同位置得到不同的结果
查看本章节 查看作业目录 需求说明: 使用 JavaScript 中的变量.数据类型和运算符,计算出两个 number 类型的变量与一个 string 类型的变量的和,根据 string 类型处于运算 ...
- IOS开发新手教程(一)-数据类型和运算符
OC语法入门(一) 数据类型和运算符 1.1凝视 凝视和其它语言一样,同意单行 ,多行凝视,一份规范的代码里面须要有一些正式的凝视,例如以下凝视: /* 这是多行 凝视 */ //这是多行凝视 OC语 ...
- PostgreSQL自学笔记:5 数据类型和运算符
5 数据类型和运算符 5.1 PostgreSQL 数据类型介绍 5.1.1 整数类型 整型类型 字节 取值范围 smallint 2字节 -2^15 ~ 2^15 int integer 4字节 - ...
- JavaScript(二)---- 变量、数据类型和运算符
变量 javaScript中的变量变量是弱类型的,用var来声明. javascript的变量声明格式: var 变量名 = 数据; 声明变量要注意的事项: 1. 在javascript中声明变量是 ...
随机推荐
- 11 Java的方法 递归
6.递归 A方法调用B方法,我们很容易理解! 递归就是:A方法调用A方法!就是自己调用自己 利用递归可以用简单的程序来解决一些复杂的问题. 它通常把一个大型复杂的问题层层转化为一个与原问题相似的规模较 ...
- python之pyc
pyc是一种二进制文件,是由py文件经过编译后,生成的文件,是一种byte code,py文件变成pyc文件后, 加载的速度有所提高,而且pyc是一种跨平台的字节码,是由Python的虚拟机来执行的, ...
- Caffeine缓存详解
概要 Caffeine是一个高性能,高命中率,低内存占用,near optimal 的本地缓存,简单来说它是 Guava Cache 的优化加强版,有些文章把 Caffeine 称为"新一代 ...
- python练习册 每天一个小程序 第0005题
1 # -*-coding:utf-8-*- 2 __author__ = 'Deen' 3 ''' 4 题目说明: 你有一个目录,装了很多照片,把它们的尺寸变成都不大于 iPhone5 分辨率的大小 ...
- 突发!Gitee 图床,废了!
大家好,我是鱼皮,这两天又发生了一件挺意外的事情:Gitee 的图床废了! 图床:指储存图片的服务器,便于在网上展示图片 昨天晚上,星球里不止一位小伙伴发帖子表示自己网站.文章中的图片竟然全部变成了 ...
- TiDB 5.0认证指南之PCTA PCTP
1. TiDB简介 TiDB 是 PingCAP 公司自主设计.研发的开源分布式关系型数据库,是一款同时支持在线事务处理与在线分析处理 (Hybrid Transactional and Analyt ...
- [WPF] 假装可变字体
1. 可变字体 上图中的两个动画,一个文字直接变粗,一个渐渐变粗,我觉得后者会更有趣.但普通的字体可达不到这种效果,例如微软雅黑,无论怎么调整它的 FontWeight,实际上它也只有三种粗细: 这时 ...
- 论文翻译:2021_Joint Online Multichannel Acoustic Echo Cancellation, Speech Dereverberation and Source Separation
论文地址:https://arxiv.53yu.com/abs/2104.04325 联合在线多通道声学回声消除.语音去混响和声源分离 摘要: 本文提出了一种联合声源分离算法,可同时减少声学回声.混响 ...
- 深度优先算法--对DFS的一些小小的总结(一)
提到DFS,我们首先想到的是对树的DFS,例如下面的例子:求二叉树的深度 int TreeDepth(BinaryTreeNode* root){ if(root==nullptr)return 0; ...
- Linux 性能调优都有哪几种方法?
1.Disabling daemons (关闭 daemons). 2.Shutting down the GUI (关闭 GUI). 3.Changing kernel paramete ...