首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >C- const char*和char*铸(ADPCM解码)

C- const char*和char*铸(ADPCM解码)
EN

Stack Overflow用户
提问于 2013-09-22 02:03:45
回答 1查看 170关注 0票数 0

下面是目标-c姐妹问题,它可能提供一些洞察力:*

我所做的工作如下:

代码语言:javascript
复制
g_ADPCMstate.valprev=32767;
g_ADPCMstate.index=0;


const char *modulatedBytes1 = {0xca,0x82,0x00,0x00,0x80,0x80,0x80,0x80};
char *modulatedBytes =  (char *)modulatedBytes1;
unsigned int moduleatedLength = 8;
short *decompressedBytes = NULL;

adpcm_decoder(modulatedBytes, decompressedBytes, moduleatedLength, &g_ADPCMstate);

函数声明是:

代码语言:javascript
复制
void      
adpcm_decoder(indata, outdata, len, state)      
    char indata[];      
    short outdata[];      
    int len;      
    struct adpcm_state *state; 

g_ADPCMstate是adpcm_state结构的全局实例变量。http://codepad.org/5vyd0CXA是完整的代码。当*outp++ = valprev;发生时,函数会崩溃,而我从调试器得到一个错误的ACCESS语句。outp是指向outData的指针,valprev是长的。

问题必须在于我对指针和modulatedBytes和/或decompressedBytes的理解。

我对C和较低层次的概念了解甚少。我想了解一下我的问题。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-09-22 02:20:30

short *decompressedBytes = NULL;作为outdata参数传递给adpcm_decoder(),然后尝试取消引用它。你忘记分配decompressedBytes了吗?

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18939572

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档