C语言基本整型的数据范围什么意思

C语言基本整型的数据范围什么意思,第1张

基本整型变量,所占字节数为2,每个字节等于八位二进制数,可以用0和1表示的八位二进制数,2个字节也就是16位二进制。

最高位表示正负,所以用0和1组成的16位数字范围为-2的15次方~2的15次方,也就是-32768~32767。因此基本整型变量数据范围是-32768~32767。

扩展资料:

字节(Byte /bait/ n [C])是计算机信息技术用于计量存储容量的一种计量单位,通常情况下一字节等于八位, 也表示一些计算机编程语言中的数据类型和语言字符。

位数据存储的最小单位。在计算机中的二进制数系统中,位,简记为b,也称为比特,每个0或1就是一个位(bit)。计算机中的CPU位数指的是CPU一次能处理的最大位数。

字节构成信息的一个小单位,并作为一个整体来参加 *** 作,比字小,是构成字的单位。

在微型计算机中,通常用多少字节来表示存储器的存储容量。

例如,在C++的数据类型表示中,通常char为1个字节,int为4个字节,double为8个字节。

参考资料:

字节-百度百科

MySQL数据类型之一字符型

VARCHAR VS CHAR

VARCHAR型和CHAR型数据的这个差别是细微的,但是非常重要。他们都是用来储存字符串长度小于255的字符。

假如你向一个长度为四十个字符的VARCHAR型字段中输入数据Bill Gates。当你以后从这个字段中取出此数据时,你取出的数据其长度为十个字符——字符串Bill Gates的长度。 现在假如你把字符串输入一个长度为四十个字符的CHAR型字段中,那么当你取出数据时,所取出的数据长度将是四十个字符。字符串的后面会被附加多余的空格。

当你建立自己的站点时,你会发现使用VARCHAR型字段要比CHAR型字段方便的多。使用VARCHAR型字段时,你不需要为剪掉你数据中多余的空格而 *** 心。

VARCHAR型字段的另一个突出的好处是它可以比CHAR型字段占用更少的内存和硬盘空间。当你的数据库很大时,这种内存和磁盘空间的节省会变得非常重要

MySQL数据类型之二文本型

TEXT

使用文本型数据,你可以存放超过二十亿个字符的字符串。当你需要存储大串的字符时,应该使用文本型数据。

注意文本型数据没有长度,而上一节中所讲的字符型数据是有长度的。一个文本型字段中的数据通常要么为空,要么很大。

当你从HTML form的多行文本编辑框(TEXTAREA)中收集数据时,你应该把收集的信息存储于文本型字段中。但是,无论何时,只要你能避免使用文本型字段,你就应该不适用它。文本型字段既大且慢,滥用文本型字段会使服务器速度变慢。文本型字段还会吃掉大量的磁盘空间。

一旦你向文本型字段中输入了任何数据(甚至是空值),就会有2K的空间被自动分配给该数据。除非删除该记录,否则你无法收回这部分存储空间。

MySQL数据类型之三数值型

SQL支持许多种不同的数值型数据。你可以存储整数 INT 、小数 NUMERIC、和钱数 MONEY。

INT VS SMALLINT VS TINYINT

他们的区别只是字符长度:

INT型数据的表数范围是从-2,147,483,647到2,147,483,647的整数

SMALLINT 型数据可以存储从-32768到32768的整数

TINYINT 型的字段只能存储从0到255的整数,不能用来储存负数

通常,为了节省空间,应该尽可能的使用最小的整型数据。一个TINYINT型数据只占用一个字节;一个INT型数据占用四个字节。这看起来似乎差别不大,但是在比较大的表中,字节数的增长是很快的。另一方面,一旦你已经创建了一个字段,要修改它是很困难的。因此,为安全起见,你应该预测以下,一个字段所需要存储的数值最大有可能是多大,然后选择适当的数据类型。

MUNERIC

为了能对字段所存放的数据有更多的控制,你可以使用NUMERIC型数据来同时表示一个数的整数部分和小数部分。NUMERIC型数据使你能表示非常大的数——比INT型数据要大得多。一个NUMERIC型字段可以存储从-1038到1038范围内的数。NUMERIC型数据还使你能表示有小数部分的数。例如,你可以在NUMERIC型字段中存储小数314。

当定义一个NUMERIC型字段时,你需要同时指定整数部分的大小和小数部分的大小。如:MUNERIC(23,0)

一个 NUMERIC型数据的整数部分最大只能有28位,小数部分的位数必须小于或等于整数部分的位数,小数部分可以是零。

MONEY VS SMALLMONEY

你可以使用 INT型或NUMERIC型数据来存储钱数。但是,专门有另外两种数据类型用于此目的。如果你希望你的网点能挣很多钱,你可以使用MONEY型数据。如果你的野心不大,你可以使用SMALLMONEY型数据。MONEY型数据可以存储从-922,337,203,685,4775808到922,337,203,685,4775807的钱数。如果你需要存储比这还大的金额,你可以使用NUMERIC型数据。

SMALLMONEY型数据只能存储从-214,7483648到214,7483647 的钱数。同样,如果可以的话,你应该用SMALLMONEY型来代替MONEY型数据,以节省空间。

MySQL数据类型之四逻辑型

BIT

如果你使用复选框( CHECKBOX)从网页中搜集信息,你可以把此信息存储在BIT型字段中。BIT型字段只能取两个值:0或1。

当心,在你创建好一个表之后,你不能向表中添加 BIT型字段。如果你打算在一个表中包含BIT型字段,你必须在创建表时完成。

MySQL数据类型之五日期型

DATETIME VS SMALLDATETIME

一个 DATETIME型的字段可以存储的日期范围是从1753年1月1日第一毫秒到9999年12月31日最后一毫秒。

如果你不需要覆盖这么大范围的日期和时间,你可以使用SMALLDATETIME型数据。它与DATETIME型数据同样使用,只不过它能表示的日期和时间范围比DATETIME型数据小,而且不如DATETIME型数据精确。一个SMALLDATETIME型的字段能够存储从1900年1月1日到2079年6月6日的日期,它只能精确到秒。

DATETIME型字段在你输入日期和时间之前并不包含实际的数据,认识这一点是重要的。

数值类型包含: int tinyint bigint float decimal

int 大整型(占 4 个字节的存储空间)

tinyint 微小整型(占 1 个字节的存储空间)

bigint 极大整型(占 8 个字节的存储空间)

float 占4个字节,最多显示7个有效位。常用于成绩。

float(5,2)取值范围:

decimal 最多可以显示 28 个有效位

存储空间计算:整数部分和小数部分分开存储,将 9 的倍数包装成 4 个字节,余数占用的字节数如下:

decimal 的整数位和小数位模9的余数和字节对照表

例如: decimal(19,9)

整数部分:

小数部分:

char 定长:当列中存储的字符串达不到最大长度时,使用空格进行补足。

varchar 变长

char 浪费存储空间,但性能高。 varchar 节约存储空间,但存储性能低。

text / longtext(4G)

数值类型宽度为显示宽度,和占用存储空间大小无关;字符类型的宽度,超过则无法存储:

对于枚举类型的字段,字段值只能在列举的范围内选择。

日期时间类型: date time datetime timestamp

date 日期:

time 时间:

datetime 日期时间:

timestamp 日期时间:

日期时间函数: NOW() CURDATE() CURTIME()

NOW() 返回服务器当前的时间:

CURDATE() 返回当前日期:

CURTIME() 返回当前时间:

插入日期时间:

语法格式:

示例:

查询1天以内的记录:

查询2年前至今年的记录:

int是数据库中的一种数据类型。

同时,作为函数,INT函数指数据库中常用函数中的“向下取整函数”。常用来取一个数中的整数部分。Int是将一个数值向下取整为最接近的整数的函数。为取整函数。

程序中用的最多是一般整数类型(简称“整数类型”或“整型”)和长整数类型(简称“长整型”),整数类型的类型名是“int”,长整型的类型名为“long int”,可简写为“long”,int和long都是关键字。

表示范围及使用技巧

表示范围

C语言没有规定各种整数类型的表示范围,也就是说,没有规定各种整数的二进制编码长度,对于int和long,只规定了long类型的表示范围不小于int,但也允许它们的表示范围相同。具体C语言会对整型和长整型规定表示方式和表示范围。

使用技巧

标准函数INT(X)其基本功能是得到一个不大于X的最大整数,如INT(359)=3,INT(-201)=-3。INT函数是一个用途很广的函数,在教学中能有目的的分列其使用技巧。

算法思想:每一个数除以一的商是整数部分,余数是小数部分。

大概程序如下(未进行调试)

void

main()

{

int

a=0;

//整数和

float

b=00;

//小数和

//假设你的数组是array[];

for(int

index=0;index<arraylength;index++)

{

a+=(int)array[index];

b+=array[index]%1;

}

}

MySQL数据类型主要可以分成四种其中包括数值型、字符(串)型与日期和时间型与NULL值。

1 MySQL数据类型

在MySQL中有如下几种数据类型:

(1)数值型

数值是诸如32 或1534 这样的值。MySQL 支持科学表示法,科学表示法由整数或浮点数后跟“e”或“E”、一个符号(“+”或“-”)和一个整数指数来表示。124E+12 和2347e-1 都是合法的科学表示法表示的数。而124E12 不是合法的,因为指数前的符号未给出。

浮点数由整数部分、一个小数点和小数部分组成。整数部分和小数部分可以分别为空,但不能同时为空。

数值前可放一个负号“-”以表示负值。

(2)字符(串)型

字符型(也叫字符串型,简称串)是诸如“Hello, world!”或“一个馒头引起的血案”这样的值,或者是电话号码87398413这样的值。既可用单引号也可用双引号将串值括起来。

初学者往往分不清数值87398143和字符串87398143的区别。都是数字啊,怎么一 个要用数值型,一个要用字符型呢?关键就在于:数值型的87398143是要参与计算的,比如它是金融中的一个货款总额;而字符型的87398143是不 参与计算的,只是表示电话号码,这样的还有街道号码、门牌号码等等,它们都不参与计算。

(3)日期和时间型

日期和时间是一些诸如“2006-07-12”或“12:30:43”这样的值。MySQL还支持日期/时间的组合,如“2006-07-12 12:30:43”。

(4)NULL值

NULL表示未知值。比如填写表格中通讯地址不清楚留空不填写,这就是NULL值。

我们用Create Table语句创建一个表(参看前面的章节),这个表中包含列的定义。例如我们在前面创建了一个joke表,这个表中有content和writer两个列:

定义一个列的语法如下:

其中列名由col_name 给出。列名可最多包含64个字符,字符包括字母、数字、下划线及美元符号。列名可以名字中合法的任何符号(包括数字)开头。但列名不能完全由数字组成,因 为那样可能使其与MySQL数据类型分不开。MySQL保留诸如SELECT、DELETE和CREATE这样的词,这些词不能用做列名,但是函数名(如POS 和MIN)是可以使用的。

列类型col_type表示列可存储的特定值。列类型说明符还能表示存放在列中的值的最大长 度。对于某些类型,可用一个数值明确地说明其长度。而另外一些值,其长度由类型名蕴含。例如,CHAR(10) 明确指定了10个字符的长度,而TINYBLOB值隐含最大长度为255个字符。

有的类型说明符允许指定最大的显示宽度(即显示值时使用多少个字符)。浮 点类型允许指定小数位数,所以能控制浮点数的精度值为多少。

可以在列类型之后指定可选的类型说明属性,以及指定更多的常见属性。属性起修饰类型的作用,并更改其处理列值的方式,属性有以下类型:

(1)专用属性用于指定列。例如,UNSIGNED 属性只针对整型,而BINARY属性只用于CHAR 和VARCHAR。

(2)通用属性除少数列之外可用于任意列。可以指定NULL 或NOT NULL 以表示某个列是否能够存放NULL。还可以用DEFAULT,def_value 来表示在创建一个新行但未明确给出该列的值时,该列可赋予值def_value。def_value 必须为一个常量;它不能是表达式,也不能引用其他列。不能对BLOB 或TEXT 列指定缺省值。

如果想给出多个列的专用属性,可按任意顺序指定它们,只要它们跟在列类型之后、通用属性之前即可。类似地,如果需要给出多个通用属性,也可按任意顺序给出它们,只要将它们放在列类型和可能给出的列专用属性之后即可。

2 MySQL的列(字段)类型

数据库中的每个表都是由一个或多个列(字段)构成的。在用CREATE TABLE语句创建一个表时,要为每列(字段)指定一个类型。列(字段)的类型比MySQL数据类型更为细化,它精确地描述了给定表列(字段)可能包含的值的种类,如是否带小数、是否文字很多。

以上就是关于C语言基本整型的数据范围什么意思全部的内容,包括:C语言基本整型的数据范围什么意思、mysql数据库中有几种数据类型、MySQL 数据库存储类型等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9548050.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-29
下一篇 2023-04-29

发表评论

登录后才能评论

评论列表(0条)

保存