c语言变量类型问题 20

 我来答
追忆小土豆
2017-08-28 · TA获得超过7738个赞
知道大有可为答主
回答量:4890
采纳率:0%
帮助的人:1394万
展开全部
c语言的变量有三种类型:char,int,float,double

其中char为字符类型的变量是八位的,最前一位作为符号位,后面七位作为数据位.它的存储范围在-128到127之间.

int整数类型的变量是16位的,最前一位为符号位,后面的15位作为数据位.它的存储范围在-215到215-1.也就是-32768到32767.它不包扩小数点以后的数,在一般编译器中给int类型赋予带有小数的数.编译器会自动去掉小数点后面的数保留整数部分.

float为浮点数类型.首先要说明的是浮点数有两部分组成,第一部分是指数,也就是多少次幂嘛.第二部分是由尾数组成也就是一个数科学表示发之后除去幂那部分剩下的(呵呵!!!)如1.33333.那么c中的浮点数就有三部分.32位的浮点数第一位就是第一部分它决定数的符号.第二部分是八位的指数.第三部分是23位的尾数.所以浮点数具有6到7位的存储精确度.范围为3.4e-38到3.4e+38的数值.注:3.1415926e+7表示3.1415926.0.在给浮点数赋值的时候可以采用如下方法.123.45和1.2345e2是等价的.

double为双精度型变量.c编译器通常用64位来存储双精度性变量.它的精确度能够达到14到15位.64位中第一位是符号位.后面的11位是指数位.最后的52位是尾数.它的范围是-1.7e-308到1.7e+308.

类型标识符:unsigned,short,register,long和signed.

其中unsigned提示编译器不要保留符号位,这样可以扩大数据类型正数的范围.比如unsigned int的范围就变位0到65535了.

short类型用在有的编译器不能给太大的存储范围,需要给一个比较低的溢出界限.比如有的编译器就用的是32位来存储int类型.用short来标识它可以保证int是用16位来标识的.

register表示一个变量可能会用得很频繁.需要很快得存取速度所以指定的把它存到寄存器当中.

long表示不希望用16位来存储整形变量时可以用long指定它用32位来存储可以得到更大得表示范围.

当然还有long unsigned int 这样得类型.

用户自定义数据类型

用户可以使用typedef来自己定义自己需要得数据类型.如下例:

typedef unsigned long int myint;

myint num1;

这样num1就是unsigned long int类型的了.
匿名用户
2017-08-21
展开全部
问题在哪里呢?你说清楚呀。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式