某断代码-byte* 的星号表示什么
来源:百度知道 编辑:UC知道 时间:2024/08/22 09:35:11
//代码如下。这是MSDN某示例中的某断。
// 以下固定语句固定
// src 对象和 dst 对象在内存中的位置,以使这两个对象
// 不会被垃圾回收移动。
fixed (byte* pSrc = src, pDst = dst)
{
byte* ps = pSrc;
byte* pd = pDst;
// 以 4 个字节的块为单位循环计数,一次复制
// 一个整数(4 个字节):
for (int n = 0; n < count / 4; n++)
{
*((int*)pd) = *((int*)ps);
pd += 4;
ps += 4;
}
// 移动未以 4 个字节的块移动的所有字节,
// 从而完成复制:
for (int n = 0; n < count % 4; n++)
{
*pd = *ps;
pd++;
ps++;
}
}
// 以下固定语句固定
// src 对象和 dst 对象在内存中的位置,以使这两个对象
// 不会被垃圾回收移动。
fixed (byte* pSrc = src, pDst = dst)
{
byte* ps = pSrc;
byte* pd = pDst;
// 以 4 个字节的块为单位循环计数,一次复制
// 一个整数(4 个字节):
for (int n = 0; n < count / 4; n++)
{
*((int*)pd) = *((int*)ps);
pd += 4;
ps += 4;
}
// 移动未以 4 个字节的块移动的所有字节,
// 从而完成复制:
for (int n = 0; n < count % 4; n++)
{
*pd = *ps;
pd++;
ps++;
}
}
byte* pSrc 是指定义了一个指向byte内存地址的指针。
Ps:C#不推荐使用这种非安全类型。
byte类型的指针 是不安全的代码
代表指针,是C++的内容。
是指针,
byte* 是指针类型,声明pSrc为byte的指针类型
指针
为指针,不安全代码,要使用unsafe来标注,而且在编译时,不与正常代码编译方法也不一样。