​C语言零基础入门——3.数据类型

这一节的主要任务是 讲解C语言的 数据类型


1. 数据类型

1.1 何为数据类型

数据类型,其实在我们生活中经常被使用,但是在编程语言中被重新定义了一下,并且加入了一些新的知识,然后就把人给搞懵逼了。

数据类型 = 一类数 + 这类数可以执行的操作。

其中的一类数:指的就是我们数学中的整数,小数等,但是在C语言中分别叫做整形数据,浮点数。当然,C语言不是全部使用数学中的数据类型

这类数可以执行的操作:指的是一个类型的数据可以执行哪些操作,比如:整形数据我们可以进行加减乘除,字符型数据却不可以。当然可以通过某种方法实现 。

总结: 对于编程语言来说数据类型就类似于数学中 对 不同的数 可以进行不同的处理一样。

1.2 数据类型的分类

1.2.1 数据类型分类的依据

一开始我们提到过,计算机只能处理0或者1,这也就是二进制的来源,无论我们输入到计算机的是什么东西(视频,图片 ,word...),都会经过软件的处理转换成0/1之后才能给计算机处理。

对于编程语言来说,许多数据都是人为设定的,我们输入这些数据到计算机中之后,如果我们事先不让计算机知道某一个数据的长度是多少,那么计算机就不知道应该处理多少个0/1组成的零一串的长度,于是就会产生错误。

因此,用不同数据类型在内存中占用的存储长度不同,将数据类型进行分类。

这样的好处就是,我们事先让计算机知道了这个数据是什么类型,并且由于每一个数据类型的长度(就是在计算机中的存储长度)都是固定好的,这样计算机处理的时候就会按照一定的长度去选数据。

1.2.2 计算机的存储特性

计算机的内存大概就是这个样子,大致的存储就是按照某一行(或者列)进行存放0/1,当某一行(或者列)放满之后就进行后续的行(列)。

内存中的每一个小格子就是可以存放一个0或者1。

但是如果我们用一个0/1做单位的话,太过于繁琐了,就好像我们数学中有个,十,百,千,万 等等的单位,一个0或1的单位就好像数学中的 个。 于是我们产生了一些更大的单位,对于计算机中:

一个0/1的叫做bit(也叫),八个0/1叫做byte(也叫字节),于是就有了我们应该烂熟于心的一句话:一个字节等于八位 。为什么说这句话应该烂熟于心是因为,编程语言的数据类型 的数据长度就是以字节位单位的

1.2.3 常量与变量

计算机中数据有两种存在形式:常量 与 变量。具体区别见下程序:

#include <stdio.h>
#include <math.h>
void main(){int r = 3;float L = 0;float S = 0;L = 2 * 3.14 * r;S = 3.14 * r * r;printf("半径是%d , 的圆的周长是%f ,面积是%f n",r,L,S);
}

常量 :说白了就是在程序中写死了的数据,不可以在改变了,比如上边的程序中的2 ,3.14 这些数据,除非修改源代码,不然就不会在改变了。

变量 :就是在程序执行过程中他的值可以改变的,就比如用L,S代替的周长与面积, 我们给他初始值都是0,但是经过计算后可以改变他们的值。

1.2.4 常用数据类型的分类

前面我们说了数据类型的分类是按照每个数据类型占多少字节进行分类的。于是我们可以得到以下的数据类型 仅列出常用的 :

注意:我们说的按照字节数分类指的是基本数据类型的分类。

  • 整形数据 :占四个字节。

    • 它使用 int 进行定义,比如:int a = 3; ,意思就是定义了一个整形变量a,并且a的值为3 。
  • 浮点型数据:(也就是我们在数学中说的小数)占四个字节。
    • 它使用float进行定义,比如:float L = 3.14;,意思就是定义了一个浮点型变量L,并且L的值为3.14 ;
    • :之所以小数被叫做浮点型是因为,在计算机内部小数点也占用1bit的空间,并且运算的时候小数点会移动。
  • 字符型数据:占一个字节。(字符型数据是指 大写字母A~Z,小写字母a~z,数字0~9,以及一些专门定义出来的 感叹号,#号,括号 等等)世界上不是所有的字符都能被C语言识别,但是我们最常见的字符只要你能输入,就都能够被C语言识别,意思就是,字符在C语言中够用。
    • 它使用char进行定义,比如:char a = '!';,意思就是定义了一个字符型变量a,并且a的值为感叹号
    • 注意:字符的定义需要用单引号括起来。

1.2.5 常用数据类型的扩展

以上常见的三种数据类型是我们较为常见的,针对以上的三种数据类型,各自又有着一定的拓展,大家应该明白,所谓的拓展,就是对存储长度的拓展。具体每一个类型的如下:

解释

  • int 占四个字节 ,但是他这四个字节中有一半是负数,一半是正数,因此可以表示 的数据大小是 -2 147 483 648 ~ 2 147 483 647
  • unsigned int 也是占四个字节,但是他是没有符号的,因此可以表示的数据的大
    小是int的2倍,他的数据范围是0 ~ 4 294 967 295
  • short 占两个字节,他是有符号的。unsigned short与short不解释了哈。
  • long占几个字节我也说不清,一般别用就好了(因为在32位操作系统中long与
    short一样 ,64位操作系统中与int一样)。
  • long long 很少用,不解释。

解释

  • 浮点型数据的有效数字是指:小数点前后的位数相加。
  • 还有一个数据类型,不提了,因为也是长度不确定。
  • double也很常用的。

常用类型拓展类型字节数

这个不解释了,能看懂吧。

1.3 数据的操作

我们一开始讲了 数据类型 = 一类数 + 这类数可以执行的操作。

以上内容讲解的是 一类数 的内容,至于操作的内容我们放到下一节的格式化输入输出进行讲解。

好了,这一节讲到这里,每次打算写的内容都会写不完 . . .

关个注呗!!!

http://weixin.qq.com/r/_y9cRE3EbRASrQkn93rp (二维码自动识别)

c语言word类型_C语言零基础入门—数据类型相关推荐

  1. c语言int转字符串_C语言零基础入门-指针-05

    C语言零基础入门-指针-05 本节要点: 1,字符指针. 2,字符串指针. 3,指针的参数传递 4,多重指针 01. 字符指针 这里的定义与前面的基本一样,所谓的字符指针就是这个指针指向的是一个字符型 ...

  2. C语言零基础入门级数据类型+运算符+控制流+ASCII 码表+面试题【系统学习第二天】

    C语言零基础入门级数据类型+运算符+控制流 第一项 C语言->数据类型全讲解上 [1]整型int [2]整型修饰符short.long.unsigned [3]符号位 [4]格式控制符%d+%h ...

  3. C语言 const 修饰函数参数 - C语言零基础入门教程

    C语言 const 修饰函数参数 - C语言零基础入门教程 目录 一.const 简介 1.const 修饰变量 2.const 修饰指针 3.const 修饰在函数名前面 4.const 修饰在函数 ...

  4. c语言零基础自学,c语言零基础入门 该如何学习

    原标题:c语言零基础入门 该如何学习 ​零基础学习C语言该从哪里开始学习呢?在学习之前你可以先问自己,为什么我要学C语言?是为了应付考试,还是为了应聘,还是为了提高自己的编程能力.如果你以后想要长期致 ...

  5. c语言零基础入门(经验总结)

    作者本人也是计算机小白一枚,作为一名未来的电脑工作者,最开始学的就是c语言.将其作为一门了解编程,认识算法的学科再好不过.在本篇文章中不会具体涉及过多的C语言写法注意事项,主要是想谈一谈这半年中我的一 ...

  6. 单片机C语言零基础入门05 - 逻辑运算

    硬件家园单片机C语言零基础入门资料汇总链接: https://mp.weixin.qq.com/s/hMTreNUX_V90461tvALjJA ​ 一.逻辑与或非 基础理论: 逻辑与或非,运算对象是 ...

  7. 最新C语言零基础入门(带课件+源码)

    C语言零基础入门 带课件+源码 下载地址:百度网盘

  8. 视频教程-2020新版C语言程序设计零基础入门小白自学编程-C/C++

    2020新版C语言程序设计零基础入门小白自学编程 7年的开发架构经验,曾就职于国内一线互联网公司,开发工程师,现在是某创业公司技术负责人, 擅长语言有node/java/python,专注于服务端研发 ...

  9. 零基础入门学习C语言

    注:这些都是我辛苦找的资料,希望能对大家有帮助,然后就是大家选择性的下载!我个人推荐小甲鱼20G的那个,一整套!还带工具和众多电子书!全部都是免费的! 郝斌先生的视频讲解也很仔细,但是没有实践作业布置 ...

最新文章

  1. mysql 时间日期类型 datetime、timestamp、date、time、year
  2. vsftpd.conf详解
  3. C++ 复数类加减法运算重载为成员函数形式
  4. vs2012创建Windows服务
  5. P7 计算机的性能指标
  6. zabbix系列(六)zabbix添加对ubuntu系统的监控
  7. 用java创建一个单例模式,采用Java实现单例模式
  8. Microsoft.Jet.OLEDB.4.0和Microsoft.ACE.OLEDB.12.0的适用版本
  9. Springboot项目搭建(前端到数据库,超详细,附详细步骤截图)
  10. mysql课件_MYSQL讲课时的PPT课件.ppt
  11. 《产品经理面试攻略》PART 6:产品群面题
  12. 前车之鉴:从被回绝的系列原因出发,解读应聘阿里的注意事项
  13. IT项目经理沟通技巧的重要性
  14. 【项目】费曼技巧,终极学习法
  15. Linux 常用基本命令 ps top kill
  16. 微博实时话题和搜索微博实时抓取
  17. 一沙一世界,一叶一春秋
  18. 征途服务器维护后可以判国家吗,12月22日全服更新维护公告
  19. 电路设计学习一:DAC/ADC原理
  20. python 红楼梦 人物关系_用Python来理一理红楼梦里的这些关系

热门文章

  1. python怎么算反三角函数_用Python计算三角函数之atan()方法的使用
  2. 【JS算法】 排序算法及性能汇总
  3. 未来5年,取代股票、房产,最好的副业投资方式...
  4. 用jQuery设置隐藏和显示
  5. ATKCK红队评估靶场 (二)
  6. 数字用乘号拆分后乘积的最大值问题
  7. 7-12 愿天下有情人都是失散多年的兄妹.
  8. DDR3 基本指令描述及参考资料
  9. SQL保留字,命名数据库、表、列和其他数据库对象时勿用
  10. 记:今晚解决枚举传参问题