我使用犰狳來獲取矩陣,但似乎它給了我關於cols和行的錯誤數字。犰狳n_rows不起作用
第一張圖片我有一個叫做se
的30x30矩陣。我打印行數和列數。然後我將se
放入一個名爲Acqui
的函數中,並打印該函數中的行和列。
//define 'mat se' as a 30 by 30 matrix and give it certain value
printf("%u \n",se.n_rows);
printf("%u \n",se.n_cols);
NextP=Acqui(se,arr_sample,Maxu,SamTraPoi);
然後在Acqui
功能,我做到以下幾點:
Acqui(mat &se,mat &arr_sample,mat &Maxu,mat &SamTraPoi);
{
int num=se.n_rows;
int col=se.n_cols;
printf("%d \n", num);
printf("%d \n", col);
//other program
}
我得到了以下的結果,列900,不正確的。
見Acqui
我什麼也沒做只是使用引用傳遞的價值。如果我在Acqui
改變類似於下面的代碼,結果將改變
Acqui(mat &se,mat &arr_sample,mat &Maxu,mat &SamTraPoi)
{
int num=se.n_rows;
int col=se.n_cols;
printf("%llu \n", se.n_rows);
printf("%llu \n", se.n_cols);
//other programm
}
現在該行成爲一個非常大的數字。當然結果應該是四個30.
事實上,我的程序在幾天前成功運行。在這些日子裏,我安裝了一個新的軟件到我的Ubuntu,並發現它佔用了我的磁盤空間,所以我只是卸載它。我什麼也沒做。