社区
C#
帖子详情
unsafe代码中如何操作数组指针?
Anakin_Skywalker
2010-07-22 03:03:13
有一个字节数组data[n],已知其中有一段data[m1]至data[m2]是char类型的,那么如何取到这个char[m2-m1]的数组的指针呢?
...全文
92
6
打赏
收藏
unsafe代码中如何操作数组指针?
有一个字节数组data[n],已知其中有一段data[m1]至data[m2]是char类型的,那么如何取到这个char[m2-m1]的数组的指针呢?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
6 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
jointan
2010-08-02
打赏
举报
回复
什么叫数组的指针?没听说过,char**?
只能
fixed (Byte * pb = &data[m1])
{
char* pc = (char*)pb;
}
soaringbird
2010-08-02
打赏
举报
回复
Array.Copy(.....)
....
fixed(char* pa=YourArray)
{
char*p=pa;
......
}
jianuMan
2010-08-02
打赏
举报
回复
unsafe code
unsafe static void getaddress(byte []b)
{
fixed(byte *p0=b)
{
byte *p=p0;
for(int i=0;i <b.Length;i++)
{
Console.WriteLine( "a[{0}] 地址=0x{1:X}\t值={2} ",i,(uint)p,*p);
p++;
}
}
}
[STAThread]
static void Main(string[] args)
{
byte []a=new byte[]{1,2,3,4,5,6,7,8};
getaddress(a);
}
Anakin_Skywalker
2010-07-22
打赏
举报
回复
说白了就是,怎么按确定位置和长度取出byte[n]数组中的一段,并转化成char类型的数组指针
healer_kx
2010-07-22
打赏
举报
回复
C++的char是C#的byte。但是是无符号的。
2023最新,最全,最细的JUC多线程并发教程
在并发应用
中
就就会全面的带你们分析 JUC 包
中
的源码了,具体会分析下面这些: 原子
操作
类
中
的所有类源码,包括 XXXAccumulator 、 XXXAdder 锁相关,包括 AQS 所有源码、Condition 条件源码、ReentrantLock 、...
C#学习笔记
unsafe
及
指针
指针
必须在“非安全环境(
unsafe
)”
中
使用。 1.
unsafe
unsafe
关键字表示不安全的上下文。任何设计
指针
的
操作
都要求不安全的上下文。
unsafe
用作结构、类、方法、属性、委托等的修饰符。例如: static
unsafe
void ...
java
unsafe
获取
指针
_4.4.3 Java
中
的
指针
:
Unsafe
类
java多线程编程的无锁CAS底层都是通过
Unsafe
进行
操作
的:源码如下public final boolean compareAndSet(int expect, int update) {return
unsafe
.compareAndSwapInt(this, valueOffset, expect, update);}this:我们要...
Golang
unsafe
.Pointer
指针
除了常规的
指针
外,Go 语言在
unsafe
包里其实还通过
unsafe
.Pointer 提供了通用
指针
,通过这个通用
指针
以及
unsafe
包的其他几个功能又让使用者能够绕过 Go 语言的类型系统直接
操作
内存进行例如:
指针
类型转换,...
C#
中
使用
指针
转换数据类型[C#/
unsafe
]
当然,大家都知道c#
中
实现
指针
只需要写入
unsafe
,编译选项把“允许不安全
代码
”开启即可;他提出这种需求也不无道理,因为要和工控的下位机通讯,自行转换还是比较麻烦,使用
指针
的话将变的容易许多;具体的实现我...
C#
110,537
社区成员
642,576
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章