假設我正在定義一個打印多維數組元素的函數。將指針作爲參數傳遞給函數的正確方法是什麼?
int print(int *a)
{
for (int i=0;i<4;i++)
{
for(int j=0;j<4;j++)
{
cout<< *((a+i*4)+j);}
}
}
return 0;}
當我這個功能在使用主叫 -
int c=print(int *a) or print(a)
它顯示錯誤,但使用
int c=print((int*)a)
的是這3之間的區別調用時給出正確的輸出?
我認爲這是C++ - 爲什麼不使用'的std :: array'? –
爲什麼'print'沒有返回值? –
假設你定義了一個返回'int'的函數,然後在該函數的實現中沒有包含'return'語句。你認爲使用你沒有返回值的函數的返回值會是什麼?你如何期待這個功能正常工作?學習編寫代碼最重要的事情是如何實際**讀取你正在編寫的代碼並理解它做了什麼(而不是)。 –