問(wèn)題:
我使用的是BF561,使用異步存儲(chǔ)的端口來(lái)調(diào)LCD。在deal.txt記事本里放了512個(gè)數(shù)用于連點(diǎn)劃線。原來(lái)運(yùn)行在uclinux下的程序中有下邊這句:
char path[16] = "/mnt/deal.txt";
在裸機(jī)下,我把程序修改為:
char path[16] = "F:\\deal.txt" ;
編譯的時(shí)候出錯(cuò),顯示cc0144: error: a value of type "char [39]" cannot be used to initialize an entity of type "char [16]"。
把path[16]改為39或更大的數(shù),則編譯、運(yùn)行成功。
我不太明白,明明這個(gè)文件夾里放了512個(gè)數(shù),為什么path這個(gè)數(shù)組只有39個(gè)元素?
答:path里面放的不是你deal.txt文件的內(nèi)容,而是"F:\\deal.txt" ,另外你檢查一下其他地方有沒(méi)有定義char path[39]
問(wèn):多謝!其他地方?jīng)]有定義char path[39]。
char是八位有符號(hào)二進(jìn)制數(shù),char path[39]就意味著"F:\\deal.txt"這個(gè)字符數(shù)組里有39個(gè)這樣的數(shù)。但是那個(gè)deal.txt文件里存放的數(shù)明顯要多很多呀,而且每個(gè)數(shù)的數(shù)值都比較大,比如25631。難道是這其中有什么轉(zhuǎn)換機(jī)制嗎?
答:如果你要讀取deal.txt內(nèi)部數(shù)據(jù),需要使用文件系統(tǒng),用fopen 和fread讀取。不能直接賦給數(shù)組
任何問(wèn)題ADI DSP的技術(shù)及商務(wù)問(wèn)題,均可聯(lián)系OP的QQ:5516164,郵箱:sale@openadsp.com
|