我正在尝试在 C 上运行以下代码:
#include "ex1_1.h"
void path(char **adj_mat, int u, int v)
{
printf("test\n");
char temp = *adj_mat[1];
putchar(temp);
}
int main()
{
int u = 5;
int v = 5;
char mat[5][5]={
{'0', '1', '1', '1', '0'},
{'0', '0', '0', '0', '1'},
{'0', '0', '0', '0', '0'},
{'0', '0', '0', '0', '0'},
{'0', '0', '0', '0', '0'}
};
char** adj_mat = (char**)&mat;
printf("Mtest\n");
path(adj_mat, u, v);
return 1;
}
我得到“分段错误”。
我不知道为什么,我猜这与我如何将 putchar() 与多维数组指针一起使用有关。
谢谢。