相关疑难解决方法(0)

如何检查结构消耗的字节数?

如果我创建一个相对较大的结构,我如何计算它在内存中占用的字节数?

我们可以手动完成,但如果结构足够大,那么我们该怎么做呢?是否有一些代码块或应用程序?

.net c# byte

42
推荐指数
6
解决办法
2万
查看次数

sizeof()结构未知.为什么?

为什么我不能在简单的结构上使用sizeof()?

例如:

private struct FloatShortPair
{
    public float myFloat;
    public short myShort;
};

int size = sizeof(FloatShortPair);  //CS0233
Run Code Online (Sandbox Code Playgroud)

错误CS0233:'FloatShortPair'没有预定义的大小,因此sizeof只能在不安全的上下文中使用(考虑使用System.Runtime.InteropServices.Marshal.SizeOf)

MSDN声明:

sizeof运算符只能用于编译时常量的类型.如果收到此错误,请确保可以在编译时确定标识符的大小.如果不能,则使用SizeOf而不是sizeof.

float和short如何编译时间常量?8 /

c# struct sizeof

23
推荐指数
1
解决办法
5752
查看次数

我什么时候应该明确指定StructLayout?

我正在摆弄从C#调用DLL,并且需要定义我自己的结构.很多文章强制结构的顺序布局

[StructLayout(LayoutKind.Sequential)]
struct Foo ...
Run Code Online (Sandbox Code Playgroud)

所以,我跟着套件,我的程序工作.现在,当我把线路拿出来时,它仍然可以工作.我为什么需要它?

c# interop struct marshalling

6
推荐指数
1
解决办法
3186
查看次数

标签 统计

c# ×3

struct ×2

.net ×1

byte ×1

interop ×1

marshalling ×1

sizeof ×1