在 C++ 中:
byte des16[16];
....
byte *d = des16+8;
在 C# 中?
byte des16[16];
[0] 207 'Ï' unsigned char
[1] 216 'Ø' unsigned char
[2] 108 'l' unsigned char
[3] 93 ']' unsigned char
[4] 249 'ù' unsigned char
[5] 249 'ù' unsigned char
[6] 100 'd' unsigned char
[7] 0 unsigned char
[8] 76 'L' unsigned char
[9] 50 '2' unsigned char
[10] 104 'h' unsigned char
[11] 118 'v' unsigned char
[12] 104 'h' unsigned char
[13] 191 '¿' unsigned char
[14] 171 '«' unsigned char
[15] 199 'Ç' unsigned char
after
byte *d = des16+8;
d = "L2hvh¿«Ç†¿æ^ òÎL2hvh¿«Ç"
最佳答案
C#(一般来说)没有指针。也许以下是您所追求的:
byte[] des16 = new byte[16];
byte byteAtIndex8 = des16[8];
此代码为您提供索引 8 处的元素。
如果我没看错你的代码,你是在尝试获取索引 8 处元素的地址。一般来说,这在 C# 中是不可能的(除非你使用不安全的代码)。
关于c# - 将 C++ 转换为 C#,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3433363/