以下代碼:
main(){
uint8_t id = 1;
uint8_t str[] = "shutdown 1";
uint8_t* (rcm)[];
rcm = &str; //line 83
回傳第 83 行的警告:
invalid lvalue in assignment
有誰知道我該如何解決?我堅持了幾個小時......
uj5u.com熱心網友回復:
如果你有一個陣列宣告如下
uint8_t str[] = "shutdown 1";
然后指向陣列第一個元素的指標看起來像
uint8_t *rcm = str;
如果你想宣告一個將指向整個陣列作為單個物件的指標,那么你可以寫
uint8_t ( *rcm )[11] = &str;
至于這個記錄
uint8_t* (rcm)[];
那么它不是指標的宣告。它是一個未知大小和元素型別的陣列的宣告uint8_t *。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/314981.html
上一篇:函式(指標)作為引數
