请教大侠一个编译警告:
warning: integer conversion resulted in truncation
问题定位在程序段:
Uint16 *AudioBuffer;
AudioBuffer=(Uint16*)malloc(120000*sizeof(Uint16));
我是想动态分配120K左右空间存储录音数据。
不知道哪里出问题了,请大神指教。
单从语法上,看不出什么问题。
你用的是什么器件?是不是器件的寻址方面有限制?
AudioBuffer=(Uint16*)malloc(120000*sizeof(Uint16));
应该是这个转换,大概系统默认返回的指针是指向32位数据。去掉应该没什么影响
找到原因了,申请空间太大了,内存不够了。解决办法,数组长度减小一点,sysmem设大一点。