关于C++算术类型

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了关于C++算术类型相关的知识,希望对你有一定的参考价值。

C++算术类型的“最小尺寸”是什么意思?还有,long,long long,int,short,float表达数字的范围分别是多少?要详细解释,越仔细越好,谢谢了

c++标准规定了这些算术类型的最小尺寸,也就是表示范围。
int是2B(可以比这大),long要求不小于int,short要求不大于int。
float参见IEEE浮点数标准,float为4B,double8B,当然可以比这些大,这些只是最小的要求。
我用的vc6.0,int是4B,表示范围是负的2的32次方~2的32次方-1.
具体范围都是要看编译器的
参考技术A   C++ 中的基础类型分为三个类别:整数、浮动和 void。 整数类型能够处理整数。 浮动类型能够指定具有小数部分的值。

  void 类型描述了值的空集。 void 类型的变量无法指定 - 它主要用于声明不返回值的函数或用于声明指向非类型化或任意类型化数据的一般指针。 任何表达式都可以显示或强制转换为类型 void。
  但是,此类表达式仅限于下列用途:
  1、表达式语句。
  2、逗号运算符的左操作数。
  3、条件运算符 (?:) 的第二个或第三个操作数。
参考技术B 好,,,,,,,,,,,,,,,,, 参考技术C 1.几条规则
(1)char类型一般是8bit,但ANSI C里没有硬性规定其长度,某些嵌入式编译器可能是16bit
(2)short和long类型的长度不相同
(3)int类型通常同具体机器的物理字长相同
(4)short通常是16bits, int通常是16bits or 32bits每种编译器可以根据硬件的不同自由确定, 但是short和int必须最少是16bits, 而long类型必须最少是32bits, 并且short必须比int和long类型要短。
2.32位机上类型长度
size of char: 1
size of int: 4
size of long:4
size of float:4
size of long long:8
size of double:8
size of long double:12
size of char * :4
3.64位机上类型长度
size of char:1
size of int:4
size of long :8
size of float :4
size of long long:8
size of double:8
size of long double:16
size of char * :8
4.16位机类型长度
char: 1
int: 2
long:4
unsigned int:2
unsigned short:2
unsigned long:4
float:4
size of char * :4
二、C++
1.字节和字长
字节,八位就是一个字节,是固定概念。字长是指计算机一次能处理的二进制数据的长度,是一个非固定的概念。例如,8位计算机的字长为8,即一个字节, 32位计算机的字长位32,即4个字节,同理,64位计算机的字长为64,即8字节。
2.char类型始终是一个字节长,即8位。
3.int、short int和long int
通常int为一个字长,short为半个字长,long为一个或2个字长(在32位机器中为一个字长)。
4.浮点型float、双精度double、和长双精度long double
典型情况下,float 为一个字,double是两个字,long double为三个或四个字。

C++指针的算术运算 关系运算

  下面随笔是关于指针的算术运算 、关系运算。

指针类型的算术运算

  • 指针与整数的加减运算

  • 指针++,--运算

指针类型的算术运算

  • 指针p加上或减去n

    • 其意义是指针当前指向位置的前方或后方第n个数据的起始位置。

  • 指针的++、--运算

    • 意义是指向下一个或前一个完整数据的起始。

  • 运算的结果值取决于指针指向的数据类型,总是指向一个完整数据的起始位置。

  • 当指针指向连续存储的同类型数据时,指针与整数的加减运和自增自减算才有意义。

指针与整数相加的意义

指针类型的关系运算

  • 指向相同类型数据的指针之间可以进行各种关系运算。

  • 指向不同数据类型的指针,以及指针与一般整数变量之间的关系运算是无意义的。

  • 指针可以和零之间进行等于或不等于的关系运算。

    例如:p==0或p!=0


以上是关于关于C++算术类型的主要内容,如果未能解决你的问题,请参考以下文章

C++基本内置类型

C++标准库中会有算术类型的概念吗?

C++隐式类型转换

C++隐式类型转换

C++ Primer 学习笔记——第二章

语言学习c++——内置基本类型