1 2 3 4

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;
}

posted on 2020-12-23 13:17  三日坊主i  阅读(259)  评论(0)    收藏  举报

导航