zl程序教程

您现在的位置是:首页 >  Java

当前栏目

[C语言]初始数据类型

2023-02-18 15:50:03 时间

? 作者简介:大家好,我是泽奀。全栈领域新星创作者?作者周榜:65 ✨ ? 个人主页:weixin_52632755的博客_泽奀_CSDN博客 ? 本系列:【C】系列_泽奀的博客-CSDN博客 ? 点赞➕评论➕收藏 == 养成习惯?

目录

✉概括

?数据类型

char类型

ASCll码

整形类型

整数

浮点数

float类型和double类型

sizeof

语法:

数据类型字节

字节

✉概括

数据类型其实就是:

  1. 声明不同类型的变量或者函数的一个广泛的系统。
  2. 变量的类型决定了变量存储占用的空间,以及如何解释存储的位模式。
  3. 计算机是通过二进制(0、1)进行数据存储的,例如:二进制数据"0100 0001"既可以表示十进制的数据65,也可以表示字符"A",因此在程序设计的过程当中需要一个明确每一个的数据的具体类型,这样才可以展开运算!
  4. 用于声明不同类型的变量或函数的一个广泛的系统。变量的类型决定了变量存储占用的空间,以及如何解释存储的位模式。
  • 位模式定义
  • 二进制数1和0的一维或二维数组,是计算机用来存储和处理信息的最小单位。

?数据类型

  • 介绍几种常用的数据类型
  1. char  字符数据类型              C语言表示用字符用 ' '(单引号),%c所对应的是打印字符格式的数据
  2. short  短整型数据类型          也可以写成 short int,短整形所占的存储空间大小可能比int小,常用于较小的值节省空间
  3. int  整形                            %d所对应的是打印整形十进制(0~9)的数据
  4. long  长整形                         也可以写成 long int, 长整型所占的存储空间大小可能比int多,常用于较大的数值值场合
  5. long long 更长的整形                 也可以写成 long long int,存储空间可能比long多,适用于更大的数值场合   
  6. float  单精度浮点型              建议%f所对应的是打印单精度浮点数格式的数据,打印后面的小数点位数少点
  7. double  双精度浮点型              建议%lf所对印的是打印双精度浮点数格式的数据,打印后面的小数点位数多点

char类型

我们要去存储一个字符,注意:字符它是区分大小写的,例如:'A'字符和'a'字符是不一样的,这两个字符代表了不同的字符?

存储字符a的代码,如下实例:

#include<stdio.h>
int main(void)
{
	char ch = 'a';
	printf("%c",a);
	
	return 0; 
}

运行结果:


  • char类型用于储存字符(如,字母或标点符号),但是从技术层面看, char是整数类型。
  • 因为char类型实际上储存的是整数而不是字符。计算机使用数字编码来处理字符,即用特定的整数表示特定的字符。 
  • 例如,在ASCII码中,整数65代表大写 字母A。因此,储存字母A实际上储存的是整数65。

 如下实例:

#include<stdio.h>
int main(void)
{
	char ch = 'A';
	printf("%d",ch);
	
	return 0; 
}

运行结果:

ASCll码

  • 标准ASCII码的范围是0~127,只需7位二进制数即可表示?(0111 1111)如果不了解这个二进制包括这个的话可以去我博客转载文章看下

以上就是ASCll码的值,有些地方不用去记,了解即可?

整形类型

short名为短整形,其实short类型是来自于int的这个整形,他是和int一样都是打印出整形的数据类型,包括long long也都是一样都是属于整形类型的范畴,只不过它们的区别是所占的字节大小,存储空间的大小,以及数值范围的大小是不同的。long long > int > short ,在这里我们先对这三种类型不详细的去介绍?

整数

既然说到整形类型,最好再说说整数的这个概念~!

其实整数就是和数学一样,在C语言中,整数就是没有小数的部分叫做整数的!

例如:−21和245都是整数。而3.14、0.22和2.1000都不是整数。计算机以二进制数字储存整数,例如,整数7以二进制写是111。因此,要在8位字节中储存 该数字,需要把前5位都设置成0,后3位设置成1,如下图所示:

浮点数

在说,单精度浮点型(float)以及 双精度浮点型(double)之前我们就来先讲讲什么是浮点型?

  1. 浮点数与数学中实数的概念差不多。2.75、3.16E7、7.00 和 2e-8 都是浮点数。注意,在一个值后面加上一个小数点,该值就成为一个浮点值。 
  2. 所 以,7是整数,7.00是浮点数。显然,书写浮点数有多种形式。
  3. 这里先做简要介绍:3.16E7 表示3.16×10的⑦次方(3.16 乘以10的⑦次方)其中,10的七次方=10000000,⑦被称为10的指数。
  4. 这里关键要理解浮点数和整数的储存方案不同。计算机把浮点数分成小 数部分和指数部分来表示,而且分开储存这两部分。因此,虽然7.00和7在 数值上相同,但是它们的储存方式不同。在十进制下,可以把7.0写成 0.7E1。这里,0.7是小数部分,1是指数部分。演示了一个储存浮点数的例子。当然,计算机在内部使用二进制和2的幂进行储存,而不是10的 幂。第15章将详述相关内容。现在,我们着重讲解这两种类型的实际区别。 整数没有小数部分,浮点数有小数部分。
  • 整数没有小数部分,浮点数有小数部分。 

float类型和double类型

  1. float类型也被称之为单精度浮点型,它的作用是可以打印带有浮点数的数字。
  2. double类型也被称之为双精度浮点型,它的作用是可以打印带有浮点数的数字。
  3. 同样的这两个类型虽说都可以打印出小数,但是它们的区别还是有的,存储的大小、数值的范围、包括精度的有效位、double类型都要>float的类型 

那比如说我要打印3.14159的后两位小数我该怎么打印呢,请看如下实例:

#include<stdio.h>
int main(void)
{
	double a = 3.14159;
	printf("打印:%lf\n",a);
	printf("打印小数点后两位:%.2lf\n",a);
	 
	return 0; 
}

运行结果:

  • 怎么样发现不同之处了吗,当你在%后面加个.数字你要保留几位的小数就可以啦!

sizeof

  • sizeof,是C语言当中的关键字,也是C语言当中的操作符。
  • 作用:计算类型也就是数据类型或者变量所占的空间大小。

语法:

sizeof( 类型 )

sizeof 表达式

  • 返回 类型的对象表示的字节大小。
  • 返回 表达式类型的对象表示的字节大小。不应用隐式转换到 表达式

这个就跟大家简单的概括一下不多说,以后会概述的了解即可! 

数据类型字节

如下实例:

#include<stdio.h>
int main(void)
{
	printf("char         字节:%d\n",sizeof(char)); 
	printf("short        字节:%d\n",sizeof(short));
	printf("int          字节:%d\n",sizeof(int));
	printf("long int     字节:%d\n",sizeof(long int));
	printf("long long int字节:%d\n",sizeof(long long int));
	printf("float        字节:%d\n",sizeof(float));
	printf("double       字节:%d\n",sizeof(double));
	 
	return 0; 
}

运行结果:

字节

计算机中的单位:bit - 比特位 ,1bit = 存放一个二进制位1或者0,那么在bit上面的就是字节(byte),1byte = 8bit位,kb = 1024byte,mb = 1024kb,gb = 1024mb,tb = 1024gb,pb = 1024tb,计算机当中相关单位(了解)当然后面还有不多说了,那么这里你就应该对上面的字节有所了解了吧!大家可以自己看看上述数据类型都有多少的比特位? 可能有细心的小伙伴发现了:int - 整形 和 long int 长整型 它们字节是一样的!没错是的 C语言标准:sizeof(long int) >= sizeof(int)