几种简短的数据类型的介绍(主要介绍void)

举报
念君思宁 发表于 2023/02/15 14:21:48 2023/02/15
【摘要】 几种简短的数据类型的介绍(主要介绍void)

支持笔者,并且坚持观看笔者博客的粉丝,都已经接触到了C语言的深层阶段,但是仅仅也只是深层!并没有深入研究过C语言的数据在内层中如何存储! 本篇博文,笔者将带领大家深度刨析数据在内存中的存储!

首先我们需要知道数据类型的介绍:

char
short
int
long
long long
float
double
//字符数据类型                                                        
//短整型                  2个字节
//整形
//长整型                   字节根据编译器而定(4或8)
//更长的整形
//单精度浮点数
//双精度浮点数

类型的意义:
1. 使用这个类型开辟内存空间的大小(大小决定了使用范围)。
2. 如何看待内存空间的视角
 

整形家族:


char
           unsigned char
          signed char
short
          unsigned short [int]
          signed short [int]
int
          unsigned int
         signed int
long
         unsigned long [int]
         signed long [int]

浮点数家族:

float

double

构造类型:

> 数组类型
> 结构体类型 struct
> 枚举类型 enum
> 联合类型 union
 

指针类型:

int *pi;
char *pc;
float* pf;
void* pv;
 

空类型

void 表示空类型(无类型)
通常应用于函数的返回类型、函数的参数、指针类型
 

对于void (空类型)大家在于之前的函数部分略有涉及:但是仅仅的潜意识的认为void类型没有返回值而已,并没有过多的研究深入,在此处,既然谈到了void(空类型),因此笔者也借此篇博文来带领大家浅浅的分析一下: void(空类型)的简单应用:

我们一般在函数部分设置无返回值的void空类型 !

#include <stdio.h>
 
void tset()
{
	printf("I love java\n");
}
 
int main()
{
	test();
}

在上述案列中,笔者知识浅浅的书写的一段代码,仅供参考!

上面的代码中:void tset()    也可以更改为 void tset(void)  这两者,具有一样的意思!都是典型的无返回值,不接收实参类型,但是对于void类型也能接收实参呀!如:void tset( int n) 

上面就是我们经常用到的void(空类型)的典型!但是对于其他的void读者又能知道多少呢??

下面笔者来带领大家浅浅认识一下其他的void的应用类型:

空指针:

           void* p=NULL定义了指针p,指向NULL,对于定义指针的时候,不知道该指向什么值,就赋空指针(百试百灵)

下面笔者用小小的一段代码,来带领大家认识: void* p(指针)!

int a=10;
 
void* p1=&a;

在这段代码中,笔者将a的地址赋值给了void类型的指针p1;即:p1指向a

对于:void* p1   :一般情况下主要用来临时存放地址!

因此,任何一个地址都可以放在这儿,(整型,short类型,double类型,float类型)

但是,看着 :void* p1=&a;  还不错,但是却是很难使用:用时候容易出错:

对于:

int a=10;
 
void* p1=&a;
p++;
 
*p1;

不知道该占用几个字节!因此在我们使用的时候,需要我们强制类型转化!然后才能正确使用!

对于void类型的内容,笔者就知道这么多了,至于其他的,只能一起学习,共勉!

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。