Re: 使用指標問題
|
||||
---|---|---|---|---|
管理員
|
可以估狗一下 "C 指標與多維陣列" 會有很多實用的範例與講解,
另外, Microchip University https://mu.microchip.com/ 也有專門教C語言的課程, 目前只有英文版, 中文版應該在年底前會翻譯好上架, 如果對於程式語言想要更了解的會員可以上去補習一下喔! (順便練一下英聽) 在開發環境與工具(英文版)分類中, 關於 C語言的相關課程有三門, 紅框中有您想學習的多維矩陣介紹, 下一個章節即為指標 https://mu.microchip.com/page/development-tools
發表於: 2021/10/13 7:52
|
|||
|
Re: 使用指標問題
|
||||
---|---|---|---|---|
初級會員
|
問題解了,謝謝~
另外再請教一下雙指標(指標的指標)的疑問 我想要使用宣告的char *DoublePointAddress[2]變數, 存放SADC1_GAIN_X1 、GET_CSA_1 的位址 請指教一下語法要如何書寫 存入SADC1_GAIN_X1 、GET_CSA_1位址 取出SADC1_GAIN_X1 、GET_CSA_1內容值? 謝謝~ char SADC1_GAIN_X1 [8] = {"SETADC10"}; char GET_CSA_1 [8] = {"CURRENT1"}; char *DoublePointAddress[2];
發表於: 2021/10/12 15:08
|
|||
|
Re: 使用指標問題
|
||||
---|---|---|---|---|
管理員
|
由於您宣告下列兩個數值為 const char (常數 char *)
const char SADC1_GAIN_X1 [8] = {"SETADC10"}; const char GET_CSA_1 [8] = {"CURRENT1"}; 但是 function 卻是用 char *來接, 兩者型別不一致, void MultipleCMD_load(char *Mtemp1,char *Mtemp2) 1. 更改變數為 char* char SADC1_GAIN_X1 [8] = {"SETADC10"}; char GET_CSA_1 [8] = {"CURRENT1"}; 或是 2. 更改 function 的參數型態為 const char* void MultipleCMD_load(const char *Mtemp1, const char *Mtemp2) 另外, 矩陣名稱即為指標, 不用加 &, 加了應該會報錯 MultipleCMD_load(SADC1_GAIN_X1 , GET_CSA_1 ) ;
發表於: 2021/10/12 14:17
|
|||
|
使用指標問題
|
||||
---|---|---|---|---|
初級會員
|
請問語法要如何修改才能解掉編譯後提示的warning問題
eMMC-main.c:1228:27: warning: incompatible pointer types passing 'const char (*)[8]' to parameter of type 'char *' [-Wincompatible-pointer-types] MultipleCMD_load(&SADC1_GAIN_X1, &GET_CSA_1) ; ^~~~~~~~~~~~~~ eMMC-main.c:1173:29: note: passing argument to parameter 'Mtemp1' here void MultipleCMD_load(char *Mtemp1,char *Mtemp2) 程式碼如下: const char SADC1_GAIN_X1 [8] = {"SETADC10"}; const char GET_CSA_1 [8] = {"CURRENT1"}; char MultipleCMDBuf1[8], MultipleCMDBuf2[8]; void MultipleCMD_load(char *Mtemp1,char *Mtemp2) { for(char i = 0; i < 8;i++){ MultipleCMDBuf1[i] = Mtemp1[i] ; MultipleCMDBuf2[i] = Mtemp2[i] ; } } void main() { ˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙ MultipleCMD_load(&SADC1_GAIN_X1 , &GET_CSA_1 ) ; ˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙ ˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙ ˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙ }
發表於: 2021/10/12 13:58
|
|||
|