本帖最后由 ADaiPlay 于 2011-12-17 19:24 编辑
碰到个很基础但是又很头疼的问题:
从音频设备读取的数据样本是char类型的,一个样本两个char组成,这个申请个char类型的数组和内存存放,但是处理的时候要转换成short类型或者int类型,以转换成short类型为例:我这样实现的,编译不报错,但是运行时提示非法指针:
char *buffer;
short *buffer1;
int i;
buffer = (char *)malloc(size);
buffer1 = (short *)malloc(size);
for(i=0;i<size;i++)
{
×buffer1 = (short)(*buffer);
×buffer1 <<=8;
×buffer1 +=(short)(*(buffer++));
buffer ++;
buffer1 ++;
}
求解阿。。。。。。。 |