加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

【Android】使用NDK开发中,遇到memset,memcpy, malloc函数错误

(2013-09-06 15:49:00)
标签:

android

memcpy

malloc

ndk

jni

分类: NDK_JNI

遇到在使用NDK进行底层开发的时候,会遇到一些奇怪的问题,如下:


Invalid arguments Candidates are: void memcpy(void *, const void *, ?) '

在网上搜索了一下,说是因为malloc、memset、memcpy、fread等函数在声明中使用了size_t类型。

以上错误正是因为size_t类型不能被正常识别而导致。

我的解决方法是,避免使用这些方法,使用new、strcpy等来代替。

如:

原来为:


const chartmp env->GetStringUTFChars(jstr_macNULL);
size_t len strlen(tmp) 1;
charmac (char*) malloc(len);
memcpy(mactmplen);

可以改为:


const chartmp env->GetStringUTFChars(jstr_macNULL);
int len strlen(tmp) 1;
charmac new char[len];
strcpy(mactmp);

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有