void *:通用指针、高级指针、泛型指针,用于存储地址,不能解引用,也不能进行算术运算
C语言不支持函数重载的原因:它只在函数名前加_
例如:Max(int,int) ->_Max
Max(float,float) ->_Max
C++支持函数重载的原因:要求参数列表不一样,因为它生成的符号会根据参数产生
例如:Max(int,int) ->(?Max@@YAHHH@Z)
Max(float,float)->(?Max@@YAMMM@Z)
1、交换函数(泛型指针编程)
#include <stdio.h>
#include <stdlib.h>
#include <memory.h>
#include <string.h>
//size:表示需要交换的字数据节数
void Swap(void *vp1,void *vp2,int size)//泛型编程,通用编程
{
char *tmp = (char *)malloc(size);//给临时变量动态申请内存空间
char *cp1 = (char *)vp1;//强制类型转换 将void *强转为char *
char *cp2