数据类型的本质

1、对于问题理解的深度,决定能不能成为一个高手

2、概念不清晰,是产生bug的根源

本质:固定大小内存块的别名

a[10]

a   &a

数组数据类型(关键点):

1、数组类型

2、数组指针

3、数组类型与数组指针类型的关系

求数据类型占的字节数

sizeof()

数据类型可以起别名吗?

tpedef  重定义数据类型别名

例:

#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
typedef int haha;
typedef struct student{
	int age;
} stu;
void main(void){
	printf("hello... 
");
	haha i=10;
	stu s;
	s.age=10;
	printf("hello...%d 
",i);
	return ;

}

-->void 无类型   void * 无类型指针

 void * 可以指向任何类型的数据

用法1、数据类型封装:

void * memcpy(void * dest,const void * src, size _tlen);

用法2、函数返回值和无形参

void main(void);

用法3、void  指针

C语言规定 相同数据类型的指针才可以相互赋值

malloc(4) 返回类型为void *

char * p=NULL;

p=(char*)malloc(4);

void * 转为其他类型需要类型强制转换

任何类型赋值给void * 不需要类型强制转换

不存在void 类型的变量   编译器不知道如何分配内存

原文地址:https://www.cnblogs.com/xiaotaoqi/p/5918863.html