什么类型是System.Byte [*]

时间:2010-03-15 16:55:39

标签: c# arrays types

我正在传递一个在转换为字符串时返回“System.Byte [*]”的对象。这显然不是Byte对象的标准一维数组(“System.Byte []”),那么它是什么?

2 个答案:

答案 0 :(得分:7)

这可能是一个非零基础的单维数组。

以下是如何创建一个的示例:

using System;

class Test
{
    static void Main()
    {
        Array nonZeroBase = Array.CreateInstance
           (typeof(byte), new int[]{1}, new int[]{2});
        Console.WriteLine(nonZeroBase); // Prints byte[*]
    }
}

在CLR术语中,这称为数组(矩形数组也是数组),其中一维的,从零开始的数组称为向量。 (虽然多维数组将打印为byte[,]。)

你可能对Marc Gravell上午发布的this blog post感兴趣...

答案 1 :(得分:0)

据我记得,c#中没有...[*]类型。也许您可以找到该库的API文档,它将向您显示该类型的真实内容。即使您没有这样,Visual Studio也应该在返回对象的方法上尝试自动完成时显示类型。