c++数据类型和定义
我们都知道,刚开始学习数学的时候。乘法口诀。99乘法口诀。这个是大家都需要背的。背熟了这个,大家才能知道遇到算术题如何计算。这个99乘法口诀就是一种定义。
同样任何的语言都会有很多的定义。比如语文:各种各样的中文字,英语26个字母。等等。
在软件的开发中,我们全世界那么多开发人员,如何教大家写的都互相认识呢?这里肯定的定义一个标准。做过前端开发的都知道,我们有W3C标准。这样做的目的不仅仅是为了全球的规划统一,更重要的是,对于其他一个任意地方的学过相同开发语言的人来说,在看公司的之前人做的东西,是可以看懂的。这样能减少公司的单独培训新员工。当然,牛逼的公司都有自己的技术。我就不说了。
乱七八糟说了这么多。我们不难发现最终要的也是我们所有开发人员最需要知道的。最明确的目的,那就是做软件其实就是为了处理更多日常的生活的数据。
c++处理数据
在C++中我们做出来的软件也同样实在处理数据。但是在处理数据之前。我们需要了解这门语言的基本语法。
1、C++的变量的命名规则。
2、C++有哪些定义好了的数据类型
3、C++支持那些运算法则(有那些算数运算符)
4、C++各个数据类型之间的数据类型如何进行转化的?(1自动转换,2强制转换)
A、C++命名规则:
在名称中只能使用字母字符、数字、和下划线(_).
名称的第一个字符不能是数字
区分大小写字符
不能将关键字作为名称使用
B、数据类型
按照宽度底层的顺序排列分别是: char、short、int、long 和C++11新增的long long。其中每种类型都有符号版本和无符号版本。因此总共有10种类型可供选择。
整型:short、int、long和long long
补充:应为计算机的内存由一些叫做位(bit)的单元组成。C++中的short、int、long和long long类型通过使用不同数目的位来存储值,最多能够表示4种不同的整数宽度。
由于受操作系统的不同的限制。数据类型的长度就不一定了。但是C++提供了一种灵活的标准,它确保了最小长度(从C语言借鉴来的)。
short》=16bit int》=short long>=32bit&&long》=int long long >=64bit &&long>=long
位和字节
计算机的内存的最小的单位是bit。一个字节=8位 所以 1字节=2*2*2*2*2*2*2*2=256 所以8位单元可以表示0-255 或者-128-127
这里我们可以用一个cpp文件计算出,所有整型的byte和数值范围
#include <iostream>
#include <climits>//old system
int main(){
using namespace std;
int n_int = INT_MAX;
short n_short = SHRT_MAX;
long n_long = LONG_MAX;
long long n_llong = LLONG_MAX;
cout << "int byte" << sizeof(int) << endl;
cout << "short byte" << sizeof(short) << endl;
cout << "long byte" << sizeof(long) << endl;
cout << "long long byte" << sizeof(long long) << endl; cout << "******max values*******" << endl;
cout << "int : " << n_int<< endl;
cout << "short : " <<n_short<< endl;
cout << "long : " << n_long<< endl;
cout << "long long : " << n_llong<< endl; system("pause");
return ;
}
说明:
sizeof() 和头文件 limits
sizeof 运算符指出,在8为字节的系统中,int的长度为4个字节。对类型、或变量使用sizeof()可以使用
climit中常用的符号常量:
| 符号常量 | 表示 |
| CHAR_BIT | char 的位数 |
| CHAR_MAX | char 的最大值 |
| CHAR_MIN | char 的最小值 |
| SCHAR_MAX | signed char 的最大值 |
| SCHAR_MIN | signed char 的最小值 |
| UCHAR_MAX | unsigned char 的最大值 |
| SHRT_MAX | short 的最大值 |
| SHRT_MIN | short 的最小值 |
| USHRT_MAX | unsigned short 的最大值 |
| INT_MAX | int 的最大值 |
| INT_MIN | int 的最小值 |
| UNIT_MAX | unsigned int 的最大值 |
| LONG_MAX | long 的最大值 |
| LONG_MIN | long 的最小值 |
| LONG_MAX | unsigned long 的最大值 |
c++数据类型和定义的更多相关文章
- AS3的数据类型和定义
AS3的数据类型分: 基元数据类型:Boolean int(整数) Number(长的浮点数) unit(很大的正整数) String 复杂数据类型:Arrary Date Error ...
- Java学习--基本数据类型的定义和运算2
例1 public class OperateDemo01{ public static void main(String args[]){ int num = 22 ; System.out.pri ...
- Java学习--基本数据类型的定义和运算
例1: public class DataDemo05{ public static void main(String args[]){ char ch1 = '\"' ; // 表示的是一 ...
- hive 学习系列一(数据类型的定义)
数字类型(Numeric Types) 整型 TINYINT(取值范围:-128 -- 127) SMALLINT(取值范围:-32,768 to 32,767) INT/INTEGER(取值范围: ...
- 【众秒之门 JavaScript与jQuery技术精粹 #BOOK#】第4章 数据类型及定义
<!DOCTYPE html> <html lang="zh-CN"> <head> <meta charset="utf-8& ...
- 在写WebApi判断用户权限时返回数据和接受支付结果 定义返回数据类型
using ADT.Core.Encrypt; using System; using System.Collections.Generic; using System.Linq; using Sys ...
- MS datatype define(微软数据类型定义)
这里根据MS文档整理了微软数据类型的定义, 参考文档:https://docs.microsoft.com/zh-cn/openspecs/windows_protocols/ms-dtyp/2463 ...
- CREATE TYPE - 定义一个新的数据类型
SYNOPSIS CREATE TYPE name AS ( attribute_name data_type [, ... ] ) CREATE TYPE name ( INPUT = input_ ...
- JS数组定义及详解
1.什么是数组 数组就是一组数据的集合 其表现形式就是内存中的一段连续的内存地址 数组名称其实就是连续内存地址的首地址 2.关于js中的数组特点 数组定义时无需指定数据类型 数组定义时可以无需指定数组 ...
随机推荐
- apache 的工作模式
总结:访问量大的时候使用 worker模式: 每个进程,启动多个线程来处理请求,每个线程处理一次请求,对内存要求比较高. prefoek模式 : 每个子进程只有一个线程,一次请求一个进程. 什么是a ...
- rose中设置组合
1.在工具栏选择 "association" (关联).2.编辑role B 属性 open specital , role B detail ,multiplic(重数) 为1, ...
- JAVA浅析字节流与字符流
[概括] 字节流是通用的,既可以操作图片又可以操作文本,但一般都用于操作图片.字符流是基于字节流的,因为字符流内部融合编码表,所以用来操作文本. 1.在字节输入流中能根据文件的大小来开辟数组空间 Fi ...
- 看开源代码利器—用Graphviz + CodeViz生成C/C++函数调用图(call graph)
一.Graphviz + CodeViz简单介绍 CodeViz是<Understanding The Linux Virtual Memory Manager>的作者 Mel Gorma ...
- 2015年12月02日 GitHub入门学习(四)Git操作
序,学习使用Git是一项新技能,你将了解到Git与SubVersion的区别. 一.基本操作 git init 初始化仓库,请实际建立一个目录并初始化仓库,.git目录里存储着管理当前目录内容所需的仓 ...
- Junit初级编码(一)第一个Junit测试程序
序,Junit测试是单元测试的一个框架,提供了很多方法,供我们快速开展单元测试.目前最新版本JAR包为4.12,官网地址为http://junit.org/ 一.第一个Junit测试程序 1 去官网下 ...
- 跨域攻击xss
要完全防止跨域攻击是很难的,对于有些站点是直接 拦截跨域的访问,在你从本站点跳转到其他站点时提醒,这算是一种手段吧. 而跨域攻击的发起就是在代码(包括html,css,js或是后台代码,数据库数据)里 ...
- 实体ip 虚拟ip 固定ip 动态ip
实体 IP:在网络的世界里,为了要辨识每一部计算机的位置,因此有了计算机 IP 位址的定义.一个 IP 就好似一个门牌!例如,你要去微软的网站的话,就要去『 207.46.197.101 』这个 IP ...
- PHP 三元运算符省略写法
三元运算符 “?:” 又名条件运算符 表达式 (expr1) ? (expr2) : (expr3) 在 expr1 求值为 TRUE 时的值为 expr2,在 expr1 求值为 FALSE 时的值 ...
- CSS继承总结
CSS的一个重要特征就是继承,它是依赖于祖先-后代的关系的.继承是一种机制,它允许样式不仅可以应用于某个特定的元素,还可以应用于它的后代. CSS可以继承的属性有: 1.文字相关:font-famil ...