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中的数组特点 数组定义时无需指定数据类型 数组定义时可以无需指定数组 ...
随机推荐
- 使用 trash-cli 逃出 rm 命令误删除重要文件的阴影
今天是一个难忘的日子,当时本来想清除我们公司网站cms目录下面一些cdn推送网页后残留的垃圾文件,结果在执行rm -rf conten* 时打成了rm -rf conten *结果就悲剧了.cms目录 ...
- HTML5 LocalStorage 本地存储,刷新值还在
H5的两种存储技术的最大区别就是生命周期. 1. localStorage是本地存储,存储期限不限: 2. sessionStorage会话存储,页面关闭数据就会丢失. 使用方法: localStor ...
- 浅谈JavaScript中闭包
引言 闭包可以说是JavaScript中最有特色的一个地方,很好的理解闭包是更深层次的学习JavaScript的基础.这篇文章我们就来简单的谈下JavaScript下的闭包. 闭包是什么? 闭包是什么 ...
- java从一个目录拷贝文件到另一个目录下
** * 复制单个文件 * @param oldPath String 原文件路径 如:c:/fqf.txt * @param newPath String 复制后路径 如:f:/fqf.txt * ...
- SQL Server2008 表旋转(pivot)技术
参考资料: http://www.cnblogs.com/xiashengwang/p/3503554.html
- js中的全局变量和静态变量的使用, js 的调试?- 如果js出错, js引擎 就会停止, 这会 导致 后面的 html中 refer 该函数时, 会报错 函数为定义!!
效果里面的函数, 如show, hide,slideDown等, 这些都叫 "效果"函数, 但是里面可以包含动画, 也可以 不包含动画. 动画,是指 元素 的内容 是 逐渐 显示/ ...
- thinkphp的url地址区分大小写?
在默认情况下: 在访问url地址的时候, 其中的 Action类名 即: 模块名称 是区分大小写的. (只有模块名, 即控制器名称) 可以根据设置 'URL_CASE_INSENSITIVE' =&g ...
- 看开源代码利器—用Graphviz + CodeViz生成C/C++函数调用图(call graph)
一.Graphviz + CodeViz简单介绍 CodeViz是<Understanding The Linux Virtual Memory Manager>的作者 Mel Gorma ...
- Supervisor 安装与配置
Supervisor是一个进程监控程序. 满足的需求是:我现在有一个进程需要每时每刻不断的跑,但是这个进程又有可能由于各种原因有可能中断.当进程中断的时候我希望能自动重新启动它,此时,我就需要使用到了 ...
- SQL存储过程来调用webservice
如果用存储过程来调用webservice 那存储过程的功能感觉能做好多事情了? 别自欺欺人了.那些功能还是webservice来实现的... 完整的webservice代码:(也是默认的,新建.asm ...