C++入门02-变量与基本数据类型
古诗欣赏
迢迢牵牛星
迢迢牵牛星,皎皎河汉女。纤纤擢素手,札札弄机杼。终日不成章,
泣涕零如雨。河汉清且浅,相去复几许。盈盈一水间,脉脉不得语。——《古诗十九首》
(下面才开始正文)
1.为什么用到常量和变量?
答:用来存储数据,像购物车一样,先搜集,然后再单独计算。
街道上的人们
计算机中的一行行二进制代码
微不足道的一颗颗小草
他们都可以被称作一个常量或变量个体,属于自然这个大程序中。(很形象了吧)
2.变量
类型名 变量名[=初始值];
int a; //用来存储整数,最常用的变量之一
a=123;
long long b=123456789; //一般int不够用的时候就用它,做题的大坑点,千万注意!!!
float c=3.14f; //严格意义上的float类型数字后加f,不然系统会认为是double
double d; //常用存储浮点数,精度比float高
d=114524.114524;
bool e=true; //存储真和假两种值,一般作开关使用
//以上为常用变量
各种变量的数据范围和占位符简表 原文链接
-- -- char 8 -2^7 ~ 2^7-1 %c %c、%d、%usigned -- char 8 -2^7 ~ 2^7-1 %c %c、%d、%uunsigned -- char 8 0 ~ 2^8-1 %c %c、%d、%u[signed] short [int] 16 -2^15 ~ 2^15-1 %hdunsigned short [int] 16 0 ~ 2^16-1 %hu、%ho、%hx[signed] -- int 32 -2^31 ~ 2^31-1 %dunsigned -- [int] 32 0 ~ 2^32-1 %u、%o、%x[signed] long [int] 32 -2^31 ~ 2^31-1 %ldunsigned long [int] 32 0 ~ 2^32-1 %lu、%lo、%lx[signed] long long [int] 64 -2^63 ~ 2^63-1 %I64dunsigned long long [int] 64 0 ~ 2^64-1 %I64u、%I64o、%I64x-- -- float 32 +/- 3.40282e+038 %f、%e、%g-- -- double 64 +/- 1.79769e+308 %lf、%le、%lg %f、%e、%g-- long double 96 +/- 1.79769e+308 %Lf、%Le、%Lg
ps.注:long 在各个编译器中的范围和内存都有细微差别,比如DEV C++中long占4字节,和int一样;但其他一些的编译器的long相当于long long,占8字节。
3.常量
常量就是不变的变量,常用存储一些不变的量(如圆周率pi等),也可以用作声明数组时的范围下标。
const 常量类型 常量名=常量值;
const float pi=3.14159;
const int MAX=110;
4.变量的赋值
变量1=变量2; //将变量2的值赋给变量1
int a=10;
int b=a; //b=10,a=10
int c=0;
a=c; //a=0,c=0
坑点:变量采用赋值运算符=来赋值,而等号是从右向左赋值的,也就是说赋值时右边变量的值不变并赋值给左边变量。
5.变量间的运算
数学中运算符号 |
C++中运算符号 |
加 |
+ |
减 |
- |
乘 |
* |
除 |
/ |
取模 (求余数) |
% |
'/' 运算符在整数相除时是整除形式,即去尾。如3÷2,C++中整除等于1
实例:交换两个变量间的数值
int a=10,b=20;
int c=a; //c=10
a=b; //a=20
b=c; //b=10
int a=10,b=20;
a=a+b; //a=30
b=a-b; //b=10
a=a-b; //a=20
此时输出a和b的值,输出结果如下:
a=20 b=10
--------------------------------
Process exited after 0.3715 seconds with return value 0Press ANY key to exit...
6.变量存储机制
变量在定义后被分配到一个随机的内存空间中,可能占不同的字节[8比特(bit)=1字节(byte)]。
我们可以通过sizeof函数和指针来访问到变量的内存空间(byte)和地址。
int a;
cout<<sizeof(a)<<" "<<&a<<endl;
定义一个int类型的变量,输出它的所占字节数和内存地址。
4 0xc6401ffb5c
--------------------------------
Process exited after 0.3097 seconds with return value 0Press ANY key to exit...
由此可见,内存地址是随机分配的,但整数变量占的字节(byte)数是不变的。
7.变量命名
命名规则
在名称中只能包含字母、数字和下划线
不能以数字开头
区分大小写
不能将C++关键字用作名称(即int double cout class等)
C++对于名称的长度没有限制,名称中所有的字符都有意义,但一些编译器平台有长度限制
命名风格
匈牙利命名法
基本原则是:变量名=属性+类型+对象描述;变量名区分大小写。
类型 |
开头字母/简写 |
命名 |
类型 |
开头字母/简写 |
命名 |
bool |
b |
bFlag |
字符串(string) |
str |
strName |
指针(*) |
ptr |
ptrBook |
数组(array) |
arr |
arr1 |
类(class) |
cl |
clMyClass |
枚举类型(enum) |
en |
enDate |
驼峰命名法
把变量的每个单词首字母都大写或者首个字母小写。
char MyClassName[100];
char myClassName[100];
int Year,Mouth,Day;
double Pi=3.14;
下划线命名法
每个单词之间使用下划线进行分割。
struct My_Shop{};
class Date_Time{};
以上只是比较流行的变量命名风格,在程序开发中因见名知意而被广泛应用,我们实际写小程序时可以用自己看得懂的简单命名即可,如a,b,flag等。
推荐命名方案:函数名可以使用骆驼命名法,变量名使用匈牙利命名法,常量名全部字母大写,类名和结构体名首字母大写。
8.补充:如何在代码模板基础上写代码?
以交换变量值为例
#include<iostream>
using namespace std;
int main(){ //在main函数里写代码int a=10,b=20;cout<<"开始a="<<b<<" b="<<b<<endl;int c=a;a=b;b=c;cout<<"交换后a="<<a<<" b="<<b<<endl;return 0;
}
执行以上代码后,输出:
开始a=20 b=20
交换后a=20 b=10--------------------------------
Process exited after 0.3308 seconds with return value 0Press ANY key to exit...
9.小结
变量和常量的定义是学习编程的重要部分,大家可以自己在编译环境中进行练习和创造,力求熟练掌握变量的使用,学会灵活选择类型。如果能做到以上这点,那么你就离大牛又进了一步!
掰掰ヾ(•ω•`)o
本文可以转载,但请注明原作者,谢谢
C++入门02-变量与基本数据类型相关推荐
- Python入门-day1变量和简单数据类型
变量和简单数据类型 本章内容: 1. 变量 2. 字符串 3. 数字 1. 变量 1.1 变量的命名和使用 · 变量名只能包含字母.数字和下划线.变量名不能用数字开头 · 变量名不能包含空格.可以用 ...
- 《Python编程从入门到实践》记录之第2章 变量和简单数据类型总结(思维导图)
<Python编程从入门到实践>第2章变量和简单数据类型知识总结:
- 【day 1】python编程:从入门到实践学习笔记-安装、变量和简单数据类型
学习笔记目录 [day 1]python编程:从入门到实践学习笔记-安装.变量和简单数据类型 [day 2]python编程:从入门到实践学习笔记-列表以及其操作 [day 3]python编程:从入 ...
- 《Python编程:从入门到实战》学习笔记(第2版) 第1-2章 起步变量和简单数据类型
[写在前面]为进一步提高自己的python代码能力,打算把几本经典书籍重新过一遍,形成系统的知识体系,同时适当记录一些学习笔记,我尽量及时更新!先从经典的<Python编程:从入门到实战> ...
- python显示小数点后几位数_Python编程从入门到实践-连载1(变量和简单数据类型)...
第二章 变量和简单数据类型 2.2.0 变量 我们添加了一个名为message的变量.每个变量都存储了一个值--与变量相关联的信息.在这里,存储的值为文本"Hello Python worl ...
- 学习笔记 | Python编程从入门到实践 | 第二章变量和简单数据类型
前言 小白记录自己学习python的学习贴,如有错误请大佬指正 第二章是变量和简单数据类型的学习. 关于变量 在程序中随时可以修改变量的值,python将始终记录变量的最新值 变量名只能包含字母.数字 ...
- java编程菜鸟入门02
写在前面: 此博客仅用于记录个人学习进度,学识浅薄,若有错误观点欢迎评论区指出.欢迎各位前来交流.(部分材料来源网络,若有侵权,立即删除) 传送门: java编程菜鸟入门01 java编程菜鸟入门02 ...
- -变量,进制,数据类型,标识符
###02.01_Java语言基础(常量的概述和使用)(掌握) * A:什么是常量 * 在程序执行的过程中其值不可以发生改变 * B:Java中常量的分类 * 字面值常量 * 自定义常量(面向对象部分 ...
- [GO语言基础] 三.变量声明、数据类型、标识符及编程练习12题
作为网络安全初学者,会遇到采用Go语言开发的恶意样本.因此从今天开始从零讲解Golang编程语言,一方面是督促自己不断前行且学习新知识:另一方面是分享与读者,希望大家一起进步.前文介绍了Go的编译运行 ...
- Python3 基础学习笔记 C01【变量和简单数据类型】
CSDN 课程推荐:<8小时Python零基础轻松入门>,讲师齐伟,苏州研途教育科技有限公司CTO,苏州大学应用统计专业硕士生指导委员会委员:已出版<跟老齐学Python:轻松入门& ...
最新文章
- iOS百度地图的使用
- 跟着书本重学CSS(1)
- 人人都是 Serverless 架构师 | “盲盒抽奖”创意营销活动实践
- ios多线程之NSThread头文件详解
- 进程在linux系统中原理,Linux系统原理知识 进程切换的概念介绍
- 计算机科学与技术专业可以转哪些专业,计算机科学与技术学院本科生转专业实施细则...
- MBR磁盘分区见解笔记
- Java项目:微信小程序点餐系统(java+微信小程序+Mysql)
- 第五次网页前端培训(JS的基本使用)
- 简述ip地址的abc类如何划分_IP地址ABC三类划分详细内容记录
- 7款流程图制作软件大盘点!轻松绘制流程图
- Spring Cloud Gray 微服务灰度中间件
- Google Earth Engine(GEE)——1981-2020年全球降水数据年均降水量直方图表示(北京市为例)
- bzoj 1921: [Ctsc2010]珠宝商
- QuerySet浅尝
- 宝塔面板自定义404错误页面的设置方法
- 呵呵,一个bug你改了两天?难吗?
- 做网站的人必须遵守的N大定律
- Mac解决gyp: No Xcode or CLT version detected!问题
- 【软件安装】MATLAB R2020a 安装教程
热门文章
- 1037. 在霍格沃茨找零钱
- 语音计算机在线使用方法,一分钟就能把文字转换成语音,使用电脑这个软件很简单...
- 基于Team Fundation Server 的Task软件生产与管理
- Sublime Text 3添加在浏览器中打开功能
- Ubuntu 17.10 (Artful Aardvark) 目标使用Linux 4.13内核系列
- 非规格化浮点数表示范围
- 获取当前时间的凌晨12点
- php 框架 phpstudy,phpstudy怎样装置swoole扩大_PHP开发框架教程,swoole
- 用CSS控制浏览器滚动条样式源代码
- python的功能名_python常用功能