c语言变量类型(详细)

c语言变量类型(详细)

ID:39549526

大小:39.00 KB

页数:4页

时间:2019-07-06

c语言变量类型(详细)_第1页
c语言变量类型(详细)_第2页
c语言变量类型(详细)_第3页
c语言变量类型(详细)_第4页
资源描述:

《c语言变量类型(详细)》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、1数据类型关键字  A.基本数据类型(5个)  void:声明函数无返回值或无参数,声明无类型指针,显式丢弃运算结果  char:字符型类型数据,属于整型数据的一种int:整型数据,通常为编译器指定的机器字长在VC中,最长FFFFFFFF八位16进制,-2147483648到+2147483647float:单精度浮点型数据,属于浮点数据的一种  double:双精度浮点型数据,属于浮点数据的一种float与doublefloat和double的范围是由指数的位数来决定的。float的指数位有8位,而double的指数位有11位,分布如下:floa

2、t:1bit(符号位)8bits(指数位)23bits(尾数位)double:1bit(符号位)11bits(指数位)52bits(尾数位)于是,float的指数范围为-127~+128,而double的指数范围为-1023~+1024,并且指数位是按补码的形式来划分的。其中负指数决定了浮点数所能表达的绝对值最小的非零数;而正指数决定了浮点数所能表达的绝对值最大的数,也即决定了浮点数的取值范围。float的范围为-2^128~+2^128,也即-3.40E+38~+3.40E+38;double的范围为-2^1024~+2^1024,也即-1.79

3、E+308~+1.79E+308。float和double的精度是由尾数的位数来决定的。浮点数在内存中是按科学计数法来存储的,其整数部分始终是一个隐含着的“1”,由于它是不变的,故不能对精度造成影响。float:2^23=8388608,一共七位,这意味着最多能有7位有效数字,但绝对能保证的为6位,也即float的精度为6~7位有效数字;double:2^52=4503599627370496,一共16位,同理,double的精度为15~16位。  B.类型修饰关键字(4个)short:修饰int,短整型数据,可省略被修饰的int。-32768到+

4、32767四位16进制long:修饰int,长整形数据,可省略被修饰的int。FFFFFFFF八位16进制,-2147483648到+2147483647  signed:修饰整型数据,有符号数据类型unsigned:修饰整型数据,无符号数据类型#includeintmain(intargc,char*argv[]){unsignedshorta=-1;shortb=a;printf("%d%d",a,b);return0;}//结果:65535-1这是段很简单的代码  在计算机中,负数是以补码来存储的。C语言中常量整数-1的补码

5、表示为0xFFFFFFFF。截取后面16位FFFF赋值给变量a(unsignedshort)。此时a=0xFFFF(a没有符号位,0xFFFF转换为十进制为65535)。   a又将0xFFFF,直接赋值给shortb。此时b=0xFFFF(但是要注意,b是有符号的,0xFFFF转换为十进制为-1)。执行printf("%d%d",a,b);的时候,要将a和b的值先转换为int型: a没有符号所以转为int型为0x0000FFFF, b有符号转换为int型为0xFFFFFFFF。  C.复杂类型关键字(5个)  struct:结构体声明  unio

6、n:共用体声明  enum:枚举声明  typedef:声明类型别名  sizeof:得到特定类型或特定类型变量的大小  D.存储级别关键字(6个)  auto:指定为自动变量,由编译器自动分配及释放。通常在栈上分配  static:指定为静态变量,分配在静态变量区,修饰函数时,指定函数作用域为文件内部  register:指定为寄存器变量,建议编译器将变量存储到寄存器中使用,也可以修饰函数形参,建议编译器通过寄存器而不是堆栈传递参数  extern:指定对应变量为外部变量,即标示变量或者函数的定义在别的文件中,提示编译器遇到此变量和函数时在其他模

7、块中寻找其定义。  const:与volatile合称“cv特性”,指定变量不可被当前线程/进程改变(但有可能被系统或其他线程/进程改变)  volatile:与const合称“cv特性”,指定变量的值有可能会被系统或其他进程/线程改变,强制编译器每次从内存中取得该变量的值  2流程控制关键字  A.跳转结构(4个)  return:用在函数体中,返回特定值(或者是void值,即不返回值)  continue:结束当前循环,开始下一轮循环  break:跳出当前循环或switch结构  goto:无条件跳转语句  B.分支结构(5个)  if:条件

8、语句,后面不需要放分号  else:条件语句否定分支(与if连用)  switch:开关语句(多重分支语句)  case:

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。