不同类型的指针相互转换的话,需要强制类型转换
Posted 軒邈
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了不同类型的指针相互转换的话,需要强制类型转换相关的知识,希望对你有一定的参考价值。
/*
2022.06.07
目的:
不同类型的指针相互转换的话,需要强制类型转换
理论:
1.对应类型的指针,只能保存对应类型数据的地址;
2.如果想让不同类型的指针相互赋值的时候,需要强制类型转换;
3.通用类型的指针 void* p 可以保存任何类型的指针;
4.“* + 指针”取几个字节,由指针类型来决定。
功能:
*/
#include<stdio.h>
int main(void)
int a = 0x12345678, b = 0xabcdef66;
printf("%0x %0x\\n", a, b);
int *ip_1, *ip_2;
ip_1 = &a;
ip_2 = &b;
printf("%0x %0x\\n", *ip_1, *ip_2); /* 字符型指针,所以表示四个字节地址的内容 */
char* p1, * p2;
p1 = (char *)&a;
p2 = (char *)&b;
printf("%0x %0x\\n", *p1, *p2); /* 字符型指针,所以只会表示一个字节地址的内容 */
return 0;
/*
程序运行结果:
12345678 abcdef66
12345678 abcdef66
78 66
*/
以上是关于不同类型的指针相互转换的话,需要强制类型转换的主要内容,如果未能解决你的问题,请参考以下文章