Re: 關於字元陣列的控制問題。
|
||||
---|---|---|---|---|
資深會員
|
這是月經文吧……固定時間來一次。
1)準備兩套函式,一給ROM用一給RAM用。 2)C++的多型函式可以解決這問題,不過PIC16/18沒compiler可用。
發表於: 2008/9/18 14:33
|
|||
The Answer to Life, the Universe, and Everything.
|
||||
|
Re: 關於字元陣列的控制問題。
|
||||
---|---|---|---|---|
版主
|
putsLCD ( char *Str) 傳進去的是 char 的指標,所以傳進去的必須是ㄧ個字串的起始位址。
傳進去不是字串的位址當然會有型態不對的警告,C18 並沒有錯,因為宣告上就是要用指標形態的。
發表於: 2008/9/18 12:05
|
|||
|
Re: 關於字元陣列的控制問題。
|
||||
---|---|---|---|---|
高級會員
|
我有試過把將傳入的字串先宣告成一個變數再傳入是正常的。
ex:
char *ptr="my string";
是RAM 的使用限制嗎?
發表於: 2008/9/16 11:29
|
|||
「────I am the bone of my sword.」
|
||||
|
關於字元陣列的控制問題。
|
||||
---|---|---|---|---|
高級會員
|
之前都直接用asm 寫project,最近改用C18重寫LCD control 遇到了字串上的問題,函式傳進去的字串不論是用 static char 、const char、const unsigned char …… 的型態總是不能正確傳進函式(用SIM Debug 去看過數值),compiler 也會出現 D:\Pic Project\I2C Recording\i2c_record.c:480:Warning [2066] type qualifier mismatch in assignment 這個警告訊息
所以來這找了一下,發現在W401 裡面有教學函式,其中一個宣告成 const rom char 另一個宣告成 char ,其中 const rom char 可以正確的傳入字元陣列,而另一個宣告成char 的還是不行而警告訊息也是一模一樣的,不過我在網路上找到的範例程式一般都把字元陣列放在RAM 裡面,我想請問一下前輩們是我少了什麼步驟嗎?感謝。
void main(void)
發表於: 2008/9/16 11:26
|
|||
|