C#中的数组能像C中那样偏移吗? 例如有一个byte[] aa = {1,2,3,4};我想传递从a[1]开始传递后3个元素给一个函数,请问怎么样才可以 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 (from a in aa select a).Reverse().Take(3); 数组已经是淘汰货了现在大家都用IEnumerable<T> 好像数组没有现成的方法,要不自己写如果不是一定用数组的话考虑下用ListList<Byte> b = new List<byte>();List<Byte> c = b.GetRange(i,i+3);Method1(c); lz大概不知道C中数组和C#中数组的区别吧。C中准确说没有数组这种东西。你用int a[]生成的是一段连续的内存空间,然后a[x]访问数组单元,这里[]其实是一种符号,然后a本身也不是一个对象,它只是一个内存地址的引用。而C#中数组是一个真实的对象。 C#依然有指针,只是被认为不安全,只有在标记了unsafe的代码中才能使用。所以要用类似C的指针去做也可以,但是不推荐,一旦出界不知道会发生什么情况。 C里面的[]符号其实也是来源于ASM寻址方面的,一种方便的写法。 谢谢了,明白了C#数组是什么了,可是,能实现像C中那样我想传递从a[1]开始传递后3个元素给一个函数,可以吗? byte[] aa = { 1, 2, 3, 4 }; byte[] ss = (byte[])aa.Reverse().Take(3).ToArray();//取2,3,4到ss axWindowsMediaPlayer1 为什么会出错? 清除队列时发生异常,win32错误 拒绝访问 listview 的列宽如何固定? C# 如何利用 python 的 docstring 了解字符串信息 发布一款单词查询小软件(源码) 请捐1块钱给需要的人!请别删除!帮忙顶啊.... 请问怎么在运行时改变MainMenu里面菜单选项的值?大虾帮帮我! 什么意思呢? 有关提取数据库中字段值的问题! 我被激怒了!!!!!斑竹都是干什么的????????????????? 怎样捕捉控制台退出事件 windows 7 64位操作系统,数据库为oralce 11g,vs2010不能连接上
(from a in aa select a).Reverse().Take(3);
IEnumerable<T>
如果不是一定用数组的话考虑下用ListList<Byte> b = new List<byte>();
List<Byte> c = b.GetRange(i,i+3);Method1(c);
而C#中数组是一个真实的对象。
所以要用类似C的指针去做也可以,但是不推荐,一旦出界不知道会发生什么情况。
C里面的[]符号其实也是来源于ASM寻址方面的,一种方便的写法。
byte[] aa = { 1, 2, 3, 4 };
byte[] ss = (byte[])aa.Reverse().Take(3).ToArray();//取2,3,4到ss