让 Symbian 支持标准 C
2010-03-22 16:26:00 来源:WEB开发网开始学SYMBIAN起,总是会从symbian c++ 开始,它完全从GUI的一系列对象开始,让人感觉是一个很纯粹的新东西,另外如果真的做一些现有的算法库等的移植时,感觉上很累,因为要改的地方太多太多了。比如memset,而在symbian要用
IMPORT_C TAny *memset(TAny *aTrg, TInt aValue, unsigned int aLength);
char,在symbian中用TBuf8或HBufC8等,不论是内存、字符串、运算符等,变化实在太大,让人如果进行移植,实在怕怕。
那么有没有好的办法让人可以直接用标准的 C或C++呢?
有,可以用OPENC,如我的S60 3rd FP1
1.下载 http://www.forum.nokia.com/info/sw.nokia.com/id/315ecb57-3aa8-4b19-8987-77997710f334/s60_open_c_cpp_plug_ins_v1_0_en.zip.html
2. 安装open c套件。
3. 在carbide中新建一个symbian os的open c console application.
4. 编译并运行。由于命令行下,在SYMBIAN不能直接看到,可按我写的上一篇把模拟器调成文本模式。
500)this.width=500;" border=0>
可以看到,我按
#include
#include
#include
// This is a GCCE toolchain workaround needed when compiling with GCCE
// and using main() entry point
#ifdef __GCCE__
#include
#endif
int main(void)
{
printf("Hello Open C! ");
printf("Press a character to exit! ");
char* buff;
buff=(char*)malloc(255);
memset(buff,0,255);
strcpy(buff,"Hello,buff ");
printf("%s",buff);
free(buff);
int c = getchar();
return 0;
}
这样的代码执行是完全可行的。但是要注意一点,它在GCCE中需要#include
再打开它的MMP文件,看有什么不一样呢
一般的SYMBIAN的 MMP
LIBRARY euser.lib
LIBRARY apparc.lib
LIBRARY cone.lib
更多精彩
赞助商链接