Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/277.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 多维数组分配在C中不起作用#_C#_Multidimensional Array - Fatal编程技术网

C# 多维数组分配在C中不起作用#

C# 多维数组分配在C中不起作用#,c#,multidimensional-array,C#,Multidimensional Array,我想检查多维数组是否包含值。然后我想用一个值填充它们。但有一个原因,因为我还没有发现,他不想填补价值。我是初学者。不要期望太多 开关(菜单选项)->情况1 string[,] kontodaten = new string[10, 4]; .... switch (menuChoose) { case 1: bool eingabe = true; for (int i = 0; i <= 9; i++) {

我想检查多维数组是否包含值。然后我想用一个值填充它们。但有一个原因,因为我还没有发现,他不想填补价值。我是初学者。不要期望太多

开关(菜单选项)->情况1

string[,] kontodaten = new string[10, 4];
....
switch (menuChoose)
{
    case 1:
        bool eingabe = true;
        for (int i = 0; i <= 9; i++)
        {
            if (kontodaten[i, 0] == null || kontodaten[i, 1].Length == 0)
            {
                row = i;
                i = 9;
            }
        }
        while (eingabe == true)
        {
            try
            {
                Console.WriteLine("Bitte geben Sie ihren Vornamen ein: ");
                kontodaten[row, 0] = Console.ReadLine();
                Console.WriteLine("Bitte geben Sie ihren Nachnamen ein: ");
                kontodaten[row, 1] = Console.ReadLine();
                Console.WriteLine("Bitte geben Sie ihren PIN ein: ");
                kontodaten[row, 2] = Console.ReadLine();
                eingabe = false;
            }
            catch
            {
                Console.WriteLine("\n\a\tFEHLER: Eingabe ungültig");
            }
        }
        break;
    case 10:
        for (int j = 0; j <= 9; j++)
        {
            Console.WriteLine("Vorname:{0};Nachname:{1};PIN:{2};Kontostand:{3} -- {4}", kontodaten[j, 0], kontodaten[j, 1], kontodaten[j, 2], kontodaten[j, 3], j);
        }
        break;
}
string[,]kontodaten=新字符串[10,4];
....
开关(菜单选择)
{
案例1:
bool-eingabe=true;

对于(inti=0;i,这看起来像是某种编程练习,因此我不会讨论具有有限大小数组的问题

kontodaten在方法中是类变量还是局部变量? 如果它是局部变量,则每次调用函数时都要重新初始化它。 因此,当你遇到“案例10”时,你会得到一个全新的空数组

尝试使用如下访问修饰符将其置于函数之外:
private string[,]kontodaten=新字符串[10,4]不管它是否工作,解决方案都不是最优的。据我所知,你希望能够存储多达10人的帐户数据。如果你想在一天内节省11?如果在中间删除一个……还有每个记录的4个字段。如果你还想保存一个地址,你会怎么做?你总是需要改变整个程序。我是,有很好的机会打破一些东西。我建议你使用一个列表。你可以简单地添加、删除、排序……东西。你的AccountData是一个拥有你需要的所有属性的类。即使你是初学者。也不要学死胡同。@Klamsi哇,你比我更了解这个问题。但是,我不能阅读语言,所以可能是这样没有帮助:)