请教一下C#里边这么写是什么意思。类型后面带*号的。

NeverFear 2013-12-27 04:45:53
在 Color32 后面加了个 * 号,这样定义变量是什么意思。

现在程序编译报错了,
错误 1 运算符“.”无法应用于“NovelSpider.Common.GifPalette.Color32*”类型的操作数 F:\NovelSpiderDev\NovelSpider.Common\NovelSpider\Common\GifPalette.cs 160 24 NovelSpider.Common


private unsafe byte X7459FBEB1334F8842CDDE237F1BB786C(Color32* pixel)
{
byte num = 0;
int aRGB = pixel.ARGB;
if (this.XC288D08CAB23091DD00D1DCC1BD0BBB6.ContainsKey(aRGB))
{
return (byte) this.XC288D08CAB23091DD00D1DCC1BD0BBB6[aRGB];
}
if (pixel.Alpha != 0)
{
int num4 = 0x7fffffff;
int red = pixel.Red;
int green = pixel.Green;
int blue = pixel.Blue;
if (!this.XE767F3E74F98446329579D8D531A62B2(red, green, blue))
{
for (int i = 0; i < this.X4DF3230DAB68219F2154E5983D2FEB49.Length; i++)
{
Color color = this.X4DF3230DAB68219F2154E5983D2FEB49[i];
int num10 = color.R - red;
int num11 = color.G - green;
int num12 = color.B - blue;
int num13 = ((num10 * num10) + (num11 * num11)) + (num12 * num12);
if (num13 < num4)
{
num = (byte) i;
num4 = num13;
if (num13 == 0)
{
break;
}
}
}
}
else
{
for (int j = 0; j < this.X4DF3230DAB68219F2154E5983D2FEB49.Length; j++)
{
if (this.X4DF3230DAB68219F2154E5983D2FEB49[j].A == 0)
{
num = (byte) j;
break;
}
}
}
}
else
{
for (int k = 0; k < this.X4DF3230DAB68219F2154E5983D2FEB49.Length; k++)
{
if (this.X4DF3230DAB68219F2154E5983D2FEB49[k].A == 0)
{
num = (byte) k;
break;
}
}
}
this.XC288D08CAB23091DD00D1DCC1BD0BBB6.Add(aRGB, num);
return num;
}
...全文
429 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
cheng2005 2014-01-23
  • 打赏
  • 举报
回复
连基本语法都不会就搞逆向工程,精神可嘉。
BenBenBears 2014-01-23
  • 打赏
  • 举报
回复
引用 6 楼 KarasCanvas 的回复:
楼主是想破解什么吧
怎么看出来的,元芳。
幻影gool 2014-01-23
  • 打赏
  • 举报
回复
这款软件我已经全面反编译成功了
本拉灯 2013-12-28
  • 打赏
  • 举报
回复
你返编译别人的混淆的代码,然后再编译,当然报错了,而且还是一堆的错。。。
  • 打赏
  • 举报
回复
指针 指针 楼主要干坏事 思密达。
卧_槽 2013-12-27
  • 打赏
  • 举报
回复
这代码看起来有点眼熟,撸主你是要破解我的东西么?
种草德鲁伊 2013-12-27
  • 打赏
  • 举报
回复
楼主是想破解什么吧
qldsrx 2013-12-27
  • 打赏
  • 举报
回复
你的代码是哪里抄来的?定义了指针却完全没用到指针操作,你直接修改函数定义的参数,直接改为: private byte X7459FBEB1334F8842CDDE237F1BB786C(Color32 pixel)不就得了? 这样的代码本身是否能得到正确结果还得打个问号。
WM_JAWIN 2013-12-27
  • 打赏
  • 举报
回复
pixel.ARGB 改成 pixel->ARGB
圣光麦造 2013-12-27
  • 打赏
  • 举报
回复
「已注销」 2013-12-27
  • 打赏
  • 举报
回复
引用 1 楼 shengguang1587 的回复:
C#里面的指针 C#中使用指针需要开启不安全代码和使用unsafe关键字
已经开启了,可以编译还是报错。怎么办呀。
圣光麦造 2013-12-27
  • 打赏
  • 举报
回复
C#里面的指针 C#中使用指针需要开启不安全代码和使用unsafe关键字

110,538

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧