C语言之万能指针
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define _CRT_SCURCE_NO_WARINGS
int main()
{
//万用指针就是可以根据数据类型改变的指针类型
int a = 10; //指向了一个int类型的数据
void *p1 = &a;
*(int *)p1 = 100;
printf("%d\n", a);
printf("%d\n", *(int *)p1);
char ch = 'A'; //指向了一个char类型数据
void *p2 = &ch;
*(char *)p2 = 'B';
printf("%c \n", ch);
printf("%c \n", *(char *)p2);
int add[10] = { };
void *p3 = add;
*((int *)p3 + 1) = 200; //通过int类型的万用指针指向了一个数组,并且修改了它的元素
printf("%d \n", add[1]);
char arr[] = "Hello World"; //使用万用指针指向一个字符串,并修改了它元素的值
puts(arr);
void *p4 = arr;
char m = 'M';
*((char *)p4 + 3) = m;
puts(arr);
system("pause");
return 0;
}
浙公网安备 33010602011771号