-
-
[旧帖]
关于typedef定义的结构传参内存的问题
0.00雪花
-
发表于:
2013-5-27 11:57
4297
-
[旧帖] 关于typedef定义的结构传参内存的问题
0.00雪花
struct A
{
int val1;
int val2;
};
typedef A *PA
或者
typedef struct tagA
{
int val1;
int val2;
} A,*PA
是一样的
如果我定义
PA ss;
是不是这个ss只有四个字节,并没有为val1和val2分配内存,只是分配了指针的内存?
直接操作 ss->val1=1,这样是非法的,必须要A a; ss=&a;以后才是合法的对吧。
假如 再定义typedef PA *PPA
关键问题是有些WINDOWS API需要二级指针传入 func( _out PPA ppa),
这个时候我是需要先定义一个A类型的a
A a;
PA ss;
PPA sss;
ss=&a;
sss=&ss;
再传入sss这样来做;还是
直接定义一个 PPA sss;传入sss就行了???函数内部会申请对应的内存??
因为我看到有人使用某个API的时候,具体不记得哪个了。就是直接定义PPA sss传入sss的
是不是他写错了,还是和_out或者_in传入传出有关?
[培训]《安卓高级研修班(网课)》月薪三万计划,掌握调试、分析还原ollvm、vmp的方法,定制art虚拟机自动化脱壳的方法