public struct Person
{
public string id;
public Intptr[] id2=new Intptr[12];
}
我想定义id2为一个固定长度的数组,我该怎么办?
{
public string id;
public Intptr[] id2=new Intptr[12];
}
我想定义id2为一个固定长度的数组,我该怎么办?
解决方案 »
- 求教Document.Activate这句话是什么意思???
- 请问大量数据是用ARRAY好还是LIST好呢?
- wap
- XML问题高分(在线)
- 不知 Response.Redirect(http://www.baidu.com)可否在新窗口中打开
- c# 联动 MY SQL 方法
- 请大家帮忙解决一个天气预报程序错误的问题!错误:StartIndex 不能小于 0。参数名: startIndex
- 哪里能下载C# Windows程序的电子书啊??http方式能下的,thx
- 类似下面连接文章中(vb.net),继承的方法被执行两次的c#解决办法是什么?
- 如何用C#实现类似 Java Applet 的东东?
- [高分高难度求解] 如何将程序集(dll)安装到全局程序集缓存(GAC)中
- 向datagridview一行一行添加数据为什么不行
{
public string id;
public Intptr[] id2=new Intptr[12];
} 这样应该可以啊。
{
public string id;
public static Intptr[] id2;
} Person.id2 = new Intptr[12];
你的写法,只要保证不去修改 id2 对象,也可以当定长来用的。
不修改id2的值,只是用其里面的值,如何用unsafe?定义定长?
刚看了下定长数组不适用于 IntPtr
public struct Person
{
public string id;
public IntPtr[] id2;
} class Program
{
static void Main(string[] args)
{
Person p = new Person();
p.id2 = new IntPtr[12];
}
}完全没必要加static
我在用PtrToStructure时仍提示:数组运行时类型和元素中记录的子类型之间出现不匹配
ocx中有个结构
struct{
int nWnd;
HWND ar[30];
}mySt;ocx提供一个接口GetWnd()该接口返回的是mySt的结构指针在c#里调用GetWnd后获得指针,我想把结构里的值都读出来
所以在c#里也定义了个同样的结构,于是出现了上述问题不知道整个思路对不?
你干嘛要用string
那就是 unsafe 的定长数组了http://msdn.microsoft.com/zh-cn/library/zycewsya.aspx不过这个不支持 IntPtr ,你只能用基本类型再自己转。
[MarshalAs(UnmanagedType.ByValArray, SizeConst = 20)]
public int[] test;
的方法直接感谢同志么的链接、回复、指导!再次感谢