int length; BYTE* values = (BYTE*)&length + sizeof(length); 这段怎解? int length; BYTE* values = (BYTE*)&length + sizeof(length); 这段怎解? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 int length; BYTE* values = (BYTE*)&length + sizeof(length);// sizeof(length)实际就是sizeof(int);//&length获取了length的首地址,然后将其转换为BYTE类型。//实际上value指针就直接到了length在内存中的末尾,他俩紧挨着了 应该是将length最后一比特的地址给了values 如果是在WINDOWS VC 下:values 则为在“length”变量前面声明的一个变量;特别地:如果你的“length”是在一个函数的开头处声明的,则values实际上指向的是调用该函数的函数的堆栈的栈基址。 引用1:int length; BYTE* values = (BYTE*)&length + sizeof(length);// sizeof(length)实际就是sizeof(int);//&length获取了length的首地址,然后将其转换为BYTE类型。//实际上value指针就直接到了length在内存中的末尾,他俩紧挨着了引用2:如果是在WINDOWS VC 下:values 则为在“length”变量前面声明的一个变量;特别地:如果你的“length”是在一个函数的开头处声明的,则values实际上指向的是调用该函数的函数的堆栈的栈基址。一个版本说values在length后,一个版本说values在length前,那个才是正确啊? 类似于这个struct DATA{ int length; BYTE value[0];}DATA * = (DATA *)malloc(100);DATA->length = 100;DATA->value指向的length地址之后 length 变量紧接着的地址 调试看看内存就知道了 MFC派生类问题... 谁有没有VC比较好的可以自定义多类模板的代码,就是跟MFC多文档类模板一样的功能。 VS2008 中插入ActiveX控件问题 关于openssl编程,验证证书的问题,50分 哪里可以下载到《VC++MFC编程实例》《VC++MFC扩展编程实例》书的附书源代码? 一個概念間題 CALLBACK 低级问题! 如何给字符串数祖赋值? 高分求一源程序,关于丰富编辑控制 谁有简单消息处理的dll? 无模式对话框 有什么办法减小VS2008SP1写的MFC程序的exe大小?
int length;
BYTE* values = (BYTE*)&length + sizeof(length);// sizeof(length)实际就是sizeof(int);
//&length获取了length的首地址,然后将其转换为BYTE类型。
//实际上value指针就直接到了length在内存中的末尾,他俩紧挨着了
values 则为在“length”变量前面声明的一个变量;
特别地:如果你的“length”是在一个函数的开头处声明的,则values实际上指向的是调用该函数的函数的堆栈的栈基址。
BYTE* values = (BYTE*)&length + sizeof(length);// sizeof(length)实际就是sizeof(int);
//&length获取了length的首地址,然后将其转换为BYTE类型。
//实际上value指针就直接到了length在内存中的末尾,他俩紧挨着了
引用2:如果是在WINDOWS VC 下:
values 则为在“length”变量前面声明的一个变量;
特别地:如果你的“length”是在一个函数的开头处声明的,则values实际上指向的是调用该函数的函数的堆栈的栈基址。
一个版本说values在length后,一个版本说values在length前,那个才是正确啊?
struct DATA
{
int length;
BYTE value[0];
}DATA * = (DATA *)malloc(100);
DATA->length = 100;DATA->value指向的length地址之后