定义了两个数组
static float*[] ptrA =new float*[500000];
static float[] D = new float[500000];//系数值
其中 ptrA中存的是D的地址,请问 d的地址能变化吗?分配时用
fixed (float* blacktemp = &D[0])
{
ptrA[innumindex[m] + rowindex] = blacktemp;
}我调试的时候发现 blacktemp 中的地址值 和 &D 是不一样的
static float*[] ptrA =new float*[500000];
static float[] D = new float[500000];//系数值
其中 ptrA中存的是D的地址,请问 d的地址能变化吗?分配时用
fixed (float* blacktemp = &D[0])
{
ptrA[innumindex[m] + rowindex] = blacktemp;
}我调试的时候发现 blacktemp 中的地址值 和 &D 是不一样的
解决方案 »
- 如何手动释放对象,如何延长对象生命周期!--求助!!谢谢!!!
- 求各位大大关于在线自动更新系统给点设计思路或看看我的思路给点意见
- 如何将exl中的数据批量导入到数据库中相关的多个表中,有速度要求!
- 如何不修改hosts文件,通过程序实现把某个域名解析为指定的IP
- datagridview导入excel出问题
- 求消息队列设计与开发案例或文档,给意见者有分。。
- Web程序中如何改变tooltip的背景颜色?!
- 大家讨论一下.net下的事件处理机制
- 同志们请问哪里有可以将.net的dll文件成批的转成.cs的
- ■■[调查]您用Linux搞开发了吗?或者嵌入式Linux开发?请大家帮忙UP!
- Wpf中实现物体的吸附效果
- c++中的byte[] 类型在C#中怎么表示?
托管类定义,动态分配地址,你这样不行。
blacktemp 是 D 的第一个元素的地址 ,.net 的数组地址 和 数组内部数据的地址 并不一致
.net 不是 c++ ,c++ 数组一段连续的内存,.net 数组是Array类
具体 可以反汇编一下array,看看array具体实现
让我非常纳闷的是,另一个变量也是float数组,他的地址是固定的,而这一个就是有时候变化
---------------------------------------------
fixed会在执行期间“钉住”该变量。