(二十四)整型short,int,long,long long

整型就是……变量为整数的声明时的类型。看(四十二)

byte是字节,通常是8位,可以表示256个数字,比如0~255或者-128~127。然后上代码:

#include<iostream>
#include<climits>		//这个头文件里面,包含了关于整型限制的信息,所以需要使用,如果是老式C,则是<limits.h>

using namespace std;

int main()
{
	int n_int = INT_MAX;  //将INT的最大值赋值给变量n_int
	short n_short = SHRT_MAX;	//将SHRT(即short)的最大值赋值给n_short。不过为什么是SHRT?不懂
	long n_long = LONG_MAX;		//将LONG的最大值,赋值给n_long.
	long long n_llong = LLONG_MAX;	//将LONG LONG的最大值,赋值给n_llong

	//sizeof operator yields size of type or of variable
	//这里要显示内存字节数(注意不是位数,1内存字节是8位)
	//其中sizeof 是一个操作符(不是函数)指的是返回一个类型或者对象所占的内存字节数。其中char的sizeof最小为1.
	cout << "int is " << sizeof(int) << " bytes." << endl;   //sizeof(类型说明符,数组名或表达式); 注意,要加括号,特别是如果用内置类型名如int就更要加括号了。如果是常量或者表达式,可以不用
	cout << "short is " << sizeof n_short << " bytes." << endl;		//另一种用法, sizeof 变量名。
	cout << "long is " << sizeof n_long << " bytes." << endl;	//同上
	cout << "long long is " << sizeof n_llong << " bytes." << endl;	//同上
	cout << endl;

	cout << "Maximum values(最大值):" << endl;		//显示最大值,其中最大值的表示方式看上面,INT_MAX是int的最大值,SHRT_MAX是short的最大值等,注意SHRT_MAX没有O,而且,全部大写。最小值则为INT_MIN,即MAX换成MIN
	cout << "int: " << n_int << endl;
	cout << "short: " << n_short << endl;
	cout << "long: " << n_long << endl;
	cout << "long long: " << n_llong << endl << endl;

	cout << "Minimum int value = " << INT_MIN << endl;	//显示最小值
	cout << "Bits per byte =" << CHAR_BIT << endl;		//CHAR_BIT为字节的位数(ps:还是不太懂,貌似是每一位是一个1/0开关,8位是8个,所以能表达0~255或者-128~127。16位是65536种数,32位和64位就大得多)
														//一字节(byte)通常是8位的内存单元,1KB是1024字节。一个字母是1字节,一个汉字通常是2字节(如果你存到文本文档里的话)。
	system("pause");
	return 0;

}

输出结果:

int is 4 bytes.
short is 2 bytes.
long is 4 bytes.
long long is 8 bytes.

Maximum values(最大值):
int: 2147483647
short: 32767
long: 2147483647
long long: 9223372036854775807

Minimum int value = -2147483648
Bits per byte =8

其中,short是2bytes,那么就是2*8=16位,所以可以表示65536种数,而int是4bytes,所以是4*8=32位,其最大可以表示65536*65536种数字。

另外,符号常量和表示:

INT_MAX ————int的最大值

INT_MIN ————int的最小值

SINT_MAX ————signed int的最大值

UINT_MAX ————unsigned int的最大值。

 

CHAR_BIT ————char的位数(不是字节数,即需要/8才是字节数)(另外,只能看CHAR的,不能看INT或者SHORT,因为这里意思是一字节等于多少位)

 

 

如果要看short,就换成SHRT(没有O),LONG就换LONG,LONG LONG 就换LLONG(比LONG前面多加一个L)。

看signed的前面就加S,看unsigned 前面就加U。

看最大值后面用MAX,看最小值后面用MIN,

看位数后面就用BIT(位数仅限CHAR_BIT)。

比如CHAR_BIT 的返回值是8

 

在选择用哪个整型的时候,主要取决于以下几个原则:

①通常没有特殊需求的话,就用int;

②如果只需要表示非负数(例如字数,人数),可以用unsigned int;

③如果要表示的数字可能大于16位数的最大值,那么就用long(即使在某些系统上,int可以表示32位。不过用long就可以避免在int只能表示16位的系统上出问题),long可以表示32位。llong则表示64位(应该吧??);

④假如要节约内存,那么在符合条件的情况下,可以用short。例如short a=1;把他从int为16位转移到int为32位的系统上,其占用内存量不变。假如int a=1; 那么转移的时候,占用内存量加倍;

⑤如果只需要一个字节,那么就用char。一个字节是8位(即最大为256)

 

时间: 2024-10-31 14:17:17

(二十四)整型short,int,long,long long的相关文章

C#开发WPF/Silverlight动画及游戏系列教程(Game Course):(二十四)

C#开发WPF/Silverlight动画及游戏系列教程(Game Course):(二十四) Be careful!前方怪物出没 游戏的精灵框架到此为止算告一段落,让我们一同来体验它带来的神奇效应. 一个安静的黄昏,主角悠闲的甩着它帅气的毛发独跑于林阴大道.怎知天色已晚即将进入月亮的领地,嘿嘿,我们的故事就从这里开始:Be careful,前方怪物出没! 实在不忍心让主角空有一身武艺而无处施展,本节为了不再让它孤单,我将向游戏中加入可爱的妖精妹妹与之为伴: 好象在哪见过呢?对,就是她了,可爱吧

mysql 整型(int)数字溢出在程序和数据库设计中的考虑

    以下试以整型(int)抛砖引玉: 一:MySQL5     以MySQL5版本为例,大多数管理员可能把自增数字.或者其它应用数字字段的列属性设置为int类型,int占用4个字节,而int又分为无符号型和有符号性.对于无符号型的范围是0 到 4294967295:有符号型的范围是-2147483648 到 2147483647.参考资料可见mysql手册:11.2. 数值类型.     当要在一个数值列内保存一个超出该列允许范围的值时,MySQL的操作取决于此时有效的SQL模式.如果模式未

JAVA之旅(二十四)——I/O流,字符流,FileWriter,IOException,文件续写,FileReader,小练习

JAVA之旅(二十四)--I/O流,字符流,FileWriter,IOException,文件续写,FileReader,小练习 JAVA之旅林林总总也是写了二十多篇了,我们今天终于是接触到了I/O了.如果你初学,不懂IO流,你可以从前往后慢慢看,但是你工作了一段时间你会发现,流的使用场景以及技术点是非常的强硬的,我们势必要掌握这个知识点,如果你觉得翻阅API比较鼓噪,看视频得不到精髓,看书看不到要点,你就跟随我的JAVA之旅,一起去探索吧! 一.I/O概述 I/O全名:Input Output

Windows 8风格应用开发入门 二十四 App Bar构建

构建应用栏的目的的显示导航.命令和始终隐藏不需要的使用的工具.我们可以把应用栏放在页面 顶部或底部或同时存在顶部和底部. 默认情况在AppBar是隐藏的,当用户单击右键.按下Win+Z .或从屏幕的顶部或底部边缘轻松时可显示或关闭AppBar.当然我们也可以通过编程的方式将AppBar设 置为当用户做选择或与应用交互时显示. 构建AppBar基本步骤 通常我们构建一个应用的 AppBar,只需要三步就可以完成: 开发入门 二十四 App Bar构建-jenkins构建自由风格"> 如何构建

Bootstrap&lt;基础二十四&gt; 缩略图

原文:Bootstrap<基础二十四> 缩略图 Bootstrap 缩略图.大多数站点都需要在网格中布局图像.视频.文本等.Bootstrap 通过缩略图为此提供了一种简便的方式.使用 Bootstrap 创建缩略图的步骤如下: 在图像周围添加带有 class .thumbnail 的 <a> 标签. 这会添加四个像素的内边距(padding)和一个灰色的边框. 当鼠标悬停在图像上时,会动画显示出图像的轮廓. 下面的实例演示了默认的缩略图: <!DOCTYPE html>

今天不算二十四

问题描述 usingSystem;usingSystem.Collections;usingSystem.Diagnostics;namespaceSixtyFour{///<summary>///Expressionwithfractionsupport///</summary>classExpression{intnumerator,denominator,precedence;stringoper;Expressionopnd1,opnd2;publicExpression(

云计算设计模式(二十四)——仆人键模式

云计算设计模式(二十四)--仆人键模式 使用一个令牌或密钥,向客户提供受限制的直接访问特定的资源或服务,以便由应用程序代码卸载数据传输操作.这个模式是在使用云托管的存储系统或队列的应用中特别有用,并且可以最大限度地降低成本,最大限度地提高可扩展性和性能. 背景和问题 客户端程序和网络浏览器经常需要读取和写入文件或数据流,并从一个应用程序的存储空间.通常,应用程序将处理的运动数据,或者通过从存储读取它,并将其传输到客户端,或通过从客户机读取该载流并将其存储在数据存储中.然而,这种方法吸收了宝贵的资

引自天天安全网 ——※ 中华民族传统文化精髓___二十四孝 ※

一下是来自天天安全网的内容,强烈推荐! PS:做人不孝无异于禽兽,请宏扬我中华美德! "孝"是儒家伦理思想的核心,是千百年来中国社会维系家庭关系的道德准则,是中华民族的传统美德,是我中华民族传统文化之精髓.元代郭居敬辑录古代24个孝子的故事,编成<二十四孝>.后来的印本都配上图画,通称<二十四孝图>,成为宣扬孝道的通俗读物. 01 孝感动天舜,传说中的远古帝王,五帝之一,姓姚,名重华,号有虞氏,史称虞舜.相传他的父亲瞽叟及继母.异母弟象,多次想害死他:让舜修补谷

微信小程序把玩(二十四)toast组件

原文:微信小程序把玩(二十四)toast组件 toast消息提示框,可用在提示一些信息,比如清楚缓存给用户一个友好的提示!或操作一些请求不想让用户有什么操作,toast也可以做到因为toast显示时其他操作是无效的 主要属性: wxml <!--点击button触发toast--> <button type="primary" bindtap="listenerButton">点击显示toast</button> <!--t