在很多C程序钟,都看到这样的用法,如
A 和 B是2个结构
func(A *p)
{
B *pStr;
pStr = (B *)p;
/*对于结构指针pStr的操作*/
.........
}
1、在进行指针类型转化时,需要注意什么?
2、结构A 和 结构B 应该有什么关系么(父类?子类?)?
ps:我倒是知道,经常将入参的指针类型生命为 (void *),然后在函数内部,再将其转换为其他类型的指针。
甚么父类子类的,又不是c++就像一本书,你觉得非常好,可是他觉得很差,书,还是书,没有变,变的是你们两个对书的想法(也就是对这断内存中数据的解析方式不同而已)
哦,的确,这里面不涉及到什么父类、子类的问题,我也只是随便联想了一下。
指针所表达的就是内存中的一个地址,如果是一个相对小的 被 转换成 一个相对大 的,
那么,会出问题么?
会有越界问题么?
我的提问可能不是很清楚,希望可以得到高手的点拨
如果sizeof(A)> =sizeof(B)没有越界问题.否则会引起越界问题的.
这个看使用者是如何做了.
内存象一块面,数据类型象一个模子,同样一块面,使用不同的模子切,会展现不同的形状,需要考虑的是,切面时一定要切在系统允许你切的面上,
1、在进行指针类型转化时,需要注意什么?
你要清楚这两个类型,清楚为什么要转
2、结构A 和 结构B 应该有什么关系么(父类?子类?)?
A B 起码大小以至,一般要求数据格式一致
给你看个例子就完了:
structarpcom {
struct ifnet ac_if;/* network-visible interface */
u_charac_enaddr[6];/* ethernet hardware address */
structin_addr ac_ipaddr;/* copy of ip address- XXX */
structether_multi *ac_multiaddrs; /* list of ether multicast addrs */
intac_multicnt;/* length of ac_multiaddrs list */
};
struct arpcom arp_com;
struct arpcom *p_arp_com = &arp_com;
struct ifnet *ifp = &(arp_com.ac_if);
那么p_arp_com是一个指向arpcom结构的指针,ifp是指向arpcom结构中的ifnet结构的指针。
这两个指针的值是一样的。
这个时候就可以这样用:
struct arpcom arp_com;
struct arpcom *p_arp_com = &arp_com;
struct ifnet *ifp;
.
.
.
ifp = (struct ifnet *)p_arp_com;
分享到:
相关推荐
C语言类型转换-自动类型转换、强制类型转换、指针类型转换。 一篇文章带你快速了解!
计算机组成原理之C语言类型转换
1、本文详细描述了c语言类型转换。 2、通过详细示例,让读者更直观地阅读,更清晰的理解。 3、示例代码可直接复制,编译后可直接运行。 4、根据示例以及运行结果,让读者加强记忆及理解。
C语言隐式类型转换规则。了解一下对写程序有好处,可以防止不必要的错误
C语言变量类型的转换,字符,整形,字符串!
数据类型转换就是将数据(变量、表达式的结果)从一种类型转换到另一种类型。例如,为了保存小数你可以将int类型的变量转换为double类型。 数据类型转换的一般格式为: (type_name) expression type_name为要转换到...
类型转换心得,C++,MFC,类型转换心得
本文通过一个编程实例解析了c语言中数组访问机制及强制转换操作。
C语言数据类型转换.ppt
本文详细描述了C语言数据类型转换的方法和注意事项,具有实用价值。
C运行时类型信息RTTI及类型转换的简单介绍
C++风格的类型转换提供了4种类型转换操作符来应对不同场合的应用。
在进行运算时,以表达式中最长类型为主,将其他类型位据均转换成该类型,如: (1)若运算数中有double型或float型,则其他类型数据均转换成double类型进行运算。 (2)若运算数中最长的类型为long型.则其他类型数均...
c语言强制类型转换.exe
VC++ C语言数值类型转换源代码,代码详尽,敬请下载
C语言数据类型转换ppt课件.ppt
最近项目中经常需要int与float之间转换,有必要对它们之间转换的原理做个了解。
类型转换是C语言中常识性的知识点,但不注意又会有让人迷惑的时候,来看一道笔试题: 以下两个程序片段A和B,问那个for循环能运行? A: -------------------------------------------------------------...
在学习stm32嵌入式开发过程中,关于对GPIOA等地址的强制性结构体指针类型转换的参考依据!