Я объявил матрицу динамически следующийразмера матрицы объявлено динамически на C
double **y;
y = (double **)malloc(n*sizeof(double *));
for(i=0;i<n;i++)
y[i]=(double*)malloc(m*sizeof(double));
Где т и п целые числа объявлены ранее. Затем мне нужно вычислить функцию, которая умножает две разные матрицы, и мне нужно проверить, совпадает ли число строк в первой матрице с числом столбцов на второй матрице. Поэтому мне нужно знать количество столбцов и строк. Поэтому я вычислен, что следующим образом:
int k=sizeof(M[0])/sizeof(double);
Но это число к возвращает мне 1. И не matther как долго п и т являются ...
Что я делаю неправильно?
Спасибо и извините за мой английский.
'п * M' ваш размер. –
Также не указывайте значение, возвращаемое 'malloc()'. См .: http://stackoverflow.com/q/605845/5399734 –
dont использовать int для размера, использовать allways size_t или ptrdiff_t – 12431234123412341234123