2011-09-06 69 views
1

我有以下代码在C, 它基本上是一个迷宫其中字符阵列中的C 1至C#

S =起点G =目标。=开放路径和#=死胡同

char maze[6][6] = { 
    "S...##", 
    "#.#...", 
    "#.##.#", 
    "..#.##", 
    "#...#G", 
    "#.#..." 
}; 

我试图转换成C#,这里是我的尝试

char[,] maze = new char[6,6]; 

我不知道如何将2维数组添加到此对象。基本上我想在C#中的迷宫布局。

我也希望能够在我的迷宫中获得一个点,比如迷宫[x] [y] ==“S”。

回答

2

char[,]的解决方案可能是你想要使用,但只是踢,如果你只需要访问元素为'迷宫[Y] [x中的一个]”你可以用你的旧代码有轻微的扭曲:

string[] maze = new []{ 
    "S...##", 
    "#.#...", 
    "#.##.#", 
    "..#.##", 
    "#...#G", 
    "#.#..." 
}; 

你必须记住,这是一个数组string不是char,但字符串建模一个字符序列。如果你打算修改单独的元素(比如说maze[3][2] = '.',因为字符串是不可变的,这将不起作用)。

0
char[,] myArray = new char[6, 6] 
{ 
    { 'S','.','.','.','#','#' }, 
    { '#','.','#','.','.','.' }, 
    { '#','.','#','#','.','#' }, 
    { '.','.','#','.','#','#' }, 
    { '#','.','.','.','#','G' }, 
    { '#','.','#','.','.','.' }, 
};