2次元配列でいくつかのチェックをしようとしています。これは、あるべき値の小さい方や大きな金額です 場合、エンドユーザーで、プリントから行列の値を取得します行列を確認する
- : 問題は、私はどのように知っていないということです。
- マトリックスを印刷します。
- 宣言された関数の外で配列を編集します。
- すべての値が異なるかどうかをチェックします。
私は今まで何をしたか、この:
int main() {
int m[4][4] = {
{ 1, 2, 3, 4 },
{ 1, 2, 3, 4 },
{ 1, 2, 3, 4 },
{ 1, 2, 3, 4 } };
to_string((int **) m, 4);
return 0;
}
/*prints the matrix*/
void to_string(int **p, int size) {
int i, j = 0;
for (; i < size; i++) {
j = 0;
for (; j < size; j++) {
printf("%d\t", p[i][j]);
}
printf("\n");
}
}
が、私はエラーを取得:
Segmentation fault (core dumped)
結果は次のようになります。
Please enter the size of the matrix:
"3"
Enter 9 values:
"1,2,3,4,5,6,7,8,9"
1 2 3
4 5 6
7 8 9
すべて値は異なります!
あなたが行列とそのメンバーのサイズを入力するように作業するコードはありますか?もしそうなら、それはその質問に示されていません。 – yano
キャスト '(int **)'を削除し、すべての警告を有効にしてもう一度コンパイルして別の問題を表示します。 – chux
'void to_string(int size、int p [] [size]){'と 'to_string(4、m); 'を使用してください – chux