一、常用的数据类型

  • char:字符在计算机的存储器中以字符编码的形式保存,字符编码是一个数字,因此在计算机看来,A与数字65完全一样(65是A的ASCII码)。
  • int:如果要保存一个整数,通常可以使用int。不同计算机中的int的大小不同,但至少应该有16位。一般而言,int可以保存几万以内的数字。
  • short:它通常只有int的一半大小,所以如果只想保存一个几百、几千的数字,可以使用这个数据类型。
  • long:一般大小是int的两倍,至少应该有32位,所以可以保存几十亿以内的数字;但大部分计算机的long和int一样大,因为在这些计算机中int本身就很大。
  • float:它是保存浮点数的基本数据类型。
  • double:如果想让计算结果精确到小数点以后很多位,可以使用double。double比float多占一倍的空间,可以保存更大,更精确的数字。

二、程序验证

#include<stdio.h>
#include<limits.h> //还有表示整型大小的值
#include<float.h> //含有表示float和double类型大小的值
int main()
{
printf("The value of INT_MAX is %i\n",INT_MAX); //int 型最大值
printf("The value of INT_MIN is %i\n",INT_MIN); //int 型最小值
printf("An int takes %i bytes\n",sizeof(int)); //int所占字节 printf("The value of FLT_MAX is %f\n",FLT_MAX); //float
printf("The value of FLT_MIN is %f\n",FLT_MIN);
printf("An float takes %i bytes\n",sizeof(float)); printf("The value of CHAR_MAX is %i\n",CHAR_MAX); //char
printf("The value of CHAR_MIN is %i\n",CHAR_MIN);
printf("An char takes %i bytes\n",sizeof(char)); printf("The value of DBL_MAX is %lf\n",DBL_MAX); //double
printf("The value of DBL_MIN is %lf\n",DBL_MIN);
printf("An double takes %i bytes\n",sizeof(double)); printf("The value of SHRT_MAX is %i\n",SHRT_MAX); //short
printf("The value of SHRT_MIN is %i\n",SHRT_MIN);
printf("An short takes %i bytes\n",sizeof(short)); return ;
}

三、思考

问题1:8位、64位到底是什么意思?

答:从技术上讲,计算机的位数有多种含义,它既可以代表CPU指令的长度,也可以代表CPU一次从存储器读取数据的大小。实际上,位数是计算机能够处理的数值长度。

问题2:那这和int、double的大小有什么关系?

答:如果一台计算机能处理32位的数值,就会把基本数据类型(例如int)的大小设为32位。

C语言简明数据类型指南的更多相关文章

  1. R 语言编码风格指南

    R 语言是一门主要用于统计计算和绘图的高级编程语言.这份 R 语言编码风格指南旨在让我们的 R代码更容易阅读.分享和检查.以下规则系与 Google 的 R 用户群体协同设计而成. 概要: R编码风格 ...

  2. JVM 平台上的各种语言的开发指南

    JVM 平台上的各种语言的开发指南 为什么我们需要如此多的JVM语言? 在2013年你可以有50中JVM语言的选择来用于你的下一个项目.尽管你可以说出一大打的名字,你会准备为你的下一个项目选择一种新的 ...

  3. 来自 Google 的 R 语言编码风格指南

    来自 Google 的 R 语言编码风格指南R 语言是一门主要用于统计计算和绘图的高级编程语言. 这份 R 语言编码风格指南旨在让我们的 R 代码更容易阅读.分享和检查. 以下规则系与 Google ...

  4. 谈谈C语言的数据类型

    本文摘要: 本文主要讲述C语言中的数据类型,从基本的数据类型到派生的数据类型,从int ,char ,float double ....到指针,数组,函数,指向指针的指针,指向数组的指针,指向函数的指 ...

  5. C语言的数据类型

    复习之余,做点笔记<C语言之数据类型> 一.整数数据类型 (1)整数数据类型 整数类型 char 字符型变量   1字节(8Bit) short 短整型      2字节(16Bit) i ...

  6. C语言中数据类型的取值范围

    C语言中数据类型的取值范围如下:char -128 ~ +127 (1 Byte)short -32767 ~ + 32768 (2 Bytes)unsigned short 0 ~ 65536 (2 ...

  7. cmake简明使用指南

    cmake简明使用指南 Last update 2018/8/8 先执行cmake生成makefile,然后看看里面的内容,(至少在ubuntu16.04上的cmake3.5.1上),有如下内容提供: ...

  8. 初识 go 语言:数据类型

    目录 数据类型 指针 结构体 数组 切片 切片的方法 映射 函数闭包 结束语 前言: go语言的第三篇文章,主要讲述go语言中的数据类型,包括指针,结构体,数组,切片,映射,函数闭包等,每个都提供了示 ...

  9. C语言入坑指南-被遗忘的初始化

    前言 什么是初始化?为什么要初始化?静态变量和局部变量的初始化又有什么区别?实际应用中应该怎么做?本文将一一回答这些问题. 什么是初始化 初始化指的是对数据对象或者变量赋予初始值.例如: int va ...

随机推荐

  1. Redis数据类型应用场景及具体方法总结

    StringsStrings 数据结构是简单的key-value类型,value其实不仅是String,也可以是数字.使用Strings类型,你可以完全实现目前 Memcached 的功能,并且效率更 ...

  2. Google MapReduce到底解决什么问题?

    很多时候,定义清楚问题比解决问题更难. 什么是MapReduce? 它不是一个产品,而是一种解决问题的思路,它有多个工程实现,Google在论文中也给出了它自己的工程架构实现. MapReduce这个 ...

  3. EF框架 对字段属性为NULL的空值处理 类型前面加上?保证EF列表读取显示数据不会报异常

    譬如: public int? FlowStatus { get; set; } public DateTime? UpdateTime { get; set; }

  4. 游戏框架设计中的。绑定binding。。。命令 command 和消息message 以及MVVM

    游戏框架设计中的.绑定binding...命令 command 和消息message

  5. 关于go1.6使用vendor的坑

    基本命令是:$ govendor init$ govendor add +external 坑:如果在govendor之前,修改过go get的包源代码,那么必须在该包目录里git commit这个修 ...

  6. Android调用Webservice发送文件

    一服务器端C#这里有三个上传方法1.uploadFile( byte []bs, String fileName); PC机操作是没有问题2. uploadImage(String filename, ...

  7. Python解码base64遇到Incorrect padding错误

    Python解码base64遇到Incorrect padding错误 base64转码过程 先说一下转换过程,详细的可以参考阮一峰.廖雪峰博客: 所谓Base64,就是说选出64个字符----小写字 ...

  8. Python之Flask和Django框架解决跨域问题,配合附加ajax和fetch等js代码

    Flask框架py解决跨域问题示例: # -*- coding: utf- -*- # by zhenghai.zhang from flask import Flask, render_templa ...

  9. C语言版——点亮LED灯,深入到栈

    在上一篇进行了汇编语言的编写之后,我们采用C语言来编写程序,毕竟C语言才是我们使用最多的语言. 仅仅是点亮LED灯显然太过于简单,我们需要分析最后的反汇编,了解函数调用栈,深入C语言骨髓去分析代码,并 ...

  10. 第6章 RTX 操作系统源码方式移植

    以下内容转载自安富莱电子: http://forum.armfly.com/forum.php 本章教程为大家将介绍 RTX 操作系统源码方式移植,移植工作比较简单,只需要用户添加需要的源码文件即可, ...