1、如何將陣列指標傳入另乙個函式,並修改其內容?
對於乙個二維陣列 int arry[3][3]
最開始設想的是將陣列的指標的位址作為引數傳入,但是編譯不通過,提示型別不能從int (*)[3][3]轉換為int **
糾結好久最終找到正確的引數型別,必須傳入符號以及指向一維陣列的長度,告訴編譯器具體型別,如下
void getvalue(int arry[3], int length)
}int main()
; getvalue(arry, 3*3);
for (int index = 0; index < 3*3; index++)
system("pause");
return 0;
}
2、將指標傳參,獲取記憶體
最開始的方法如下
void getmemory(char *p)
int main()
結果報錯
原因:因為向空指標賦值
指標作為實參傳入,在函式中形成了乙個臨時的指標物件,給臨時指標p物件賦值不會改變pstr指向的位置
正確寫法:
將指標的位址作為引數傳入,讓指標指向新開闢的記憶體
void getmemory(char **p)
int main()
面試遇到的問題
1.mysql的乙個表,以a.b.c三個字段作為聯合索引,如果以其中的乙個字段作為查詢條件,會不會用到索引 如果以a 也就是聯合索引的第乙個索引 作為查詢條件 則會用到索引 如果以b或者c作為查詢條件 則不會用到索引 2.玩家登陸的具體流程 客戶端首先連線loginserver 從loginserv...
面試遇到的問題
1.grep 如何遞迴地在乙個目錄裡面搜尋所需的字串。2.判斷二叉樹是否對稱。3.c 虛表 4.epoll 和 select 的區別 5.mysql 索引,事務,隔離級別 6.c 多重繼承如果兩個基類有相同名字的成員函式 變數如何處理二義性。c 裡面是否可以把全部的成員函式都設定成virtual,會...
指標常遇到的問題
指標是個涉及到記憶體,很容易產生bug的根源,總結了幾點指標容易出錯的問題 1 對於多級指標,不要在多個函式中分配記憶體空間,例如 void func char p int main 上面這段 就是現在main函式中對p指向的空間開闢了一段記憶體,然後又在func函式中開闢了二級記憶體,這樣在專案開...