在brew開發中遇到的一些問題

來源:互聯網
上載者:User

由於公司要開發一個定位的軟體,本來是想拿給別人開發,但又因為brew手機有很多型號很難讓別人一個一個的適配。所以只好自己來摸索了,對C又十分的陌生

只好慢慢的動起來^--^

 

以下是我遇到的幾個問題:

一、亂碼問題

1、直接在代碼中定義了兩個變數

const AECHAR * dlgCaption = "dialog demo";const AECHAR * dlgText = "this is a dialog";

 然後顯示到模擬器的螢幕上但顯示的是亂碼,找了資料沒找到辦法,最後回想起從高通下載到的資料"Programming_Primer.pdf"裡面的myfirstapp,看了看代碼發現了它跟我代碼的區別是在字串變數前它加了一個"L"的字元,這是什麼意思呢?找了一下資料原來:

L (converts following character or string to its Unicode counterpart)表示轉換成寬字元,就是每個字元佔用兩個位元組。 例:strlen("asd") = 3; strlen(L"asd") = 6;將ANSI字串轉換成unicode的字串。

接下來我將My Code修改了一下:

const AECHAR * dlgCaption = L"dialog demo";const AECHAR * dlgText = L"this is a dialog";

然後再顯示了一次,,,ok...i solved it.....

 

2、從資源檔中讀取字串變數

也一直是亂碼,這是為什麼呢,按網上建議,這不應該會是亂碼啊,因為變數我也都是設定為unicode啊。

之前我一直沒去看debug資訊的,經過認真的看debug資訊後發現:debug警告了資源檔的名字只能以字母開發以數字和字母混合,但最好不要有大寫字母混在裡面

於是乎,我按這個警告去修改我的資源檔,,沒想到真的解決了該問題。

注意噢"DBGPRINTF"是一個很好用的調試工具

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.