如何在c#中的结构内部使用字符数组?
我试图在struct Books中实现char数组。我已经在结构中声明了char数组public char[]b_id=new char[3]。现在我想访问b_id并初始化一些值。怎样才能做到呢。有什么建议吗? 这是我现在的密码如何在c#中的结构内部使用字符数组?,c#,C#,我试图在struct Books中实现char数组。我已经在结构中声明了char数组public char[]b_id=new char[3]。现在我想访问b_id并初始化一些值。怎样才能做到呢。有什么建议吗? 这是我现在的密码 namespace @struct { struct Books { public string title; public char[] b_id = new char[3]; }; class Program
namespace @struct
{
struct Books
{
public string title;
public char[] b_id = new char[3];
};
class Program
{
static void Main(string[] args)
{
Books Book1; /* Declare Book1 of type Book */
/* book 1 specification */
Book1.title = "C Programming";
/* print Book1 info */
Console.WriteLine("Book 1 title : {0}", Book1.title);
Console.ReadKey();
}
}
}
在结构中不能有实例字段初始值设定项(即编译器不允许您直接在Books结构中初始化b_id char数组)。 如果您执行以下操作,您的程序应该可以运行:
struct Books
{
public string title;
public char[] b_id;
};
void Main()
{
Books book1; /* Declare Book1 of type Book */
book1.b_id = new char[3] {'a', 'b', 'c'};
/* book 1 specification */
book1.title = "C Programming";
/* print Book1 info */
Console.WriteLine("Book 1 title : {0}", book1.title);
Console.WriteLine("Book att : {0}", book1.b_id[0]);
}
您在以显而易见的方式访问它时遇到了哪些问题?你犯了什么错误?(暂且不提这里有一个可变结构:)为什么要使用可变结构和公共字段?如果可能的话,我会避免这样做。不清楚您是否应该首先使用struct。。。请提供更多关于您为什么这样做的信息。。。(我强烈建议不要使用一个名称空间,它也是一个关键字…)潜在的欺骗:一个正确的答案,一个负面的分数?我猜投下反对票的人往往懒得解释他们投下的反对票……是的,我也很惊讶。即使问题并不总是最好的,我认为用户可以对那些试图学习如何编程的人更宽容一点