c - 专有库返回 seg.fault
问题描述
我有一个专有库,可以说是 libX。
libX 是一个语音识别,并具有写入 wav 的功能(在我的情况下是 pcm)。
让我们 libX 编写的函数有这样的定义:
void Write
(
FILE * const p,
const float * const * const buffer,
const float range,
const size_t frameToBeWritten,
size_t * const frameWritten
);
我已经设法填充了一个浮点 ** 的缓冲区,但是我仍然遇到分段错误。
我的问题如何解决这个问题。
我有这个函数的一个工作示例,但是该示例对实现不公平,使用函数 PrintArray 检查了 gdb,因为我调查了工作示例 float ** 是如何被填充的:
void PrintArray(float ** a,int channels,int buffer_length){
int i;
int j;
for (i=0; i<channels; i++)
{
printf("===========================");
printf("Channel %d \n",i);
for (j=0; j<buffer_length; j++)
{
printf("%f ", a[i][j]);
}
printf("\n");
}
}
在我的代码和示例代码中,数组都被正确填充我找不到我的 float ** 和工作示例 float ** 之间的任何差异
解决方案
推荐阅读
- javascript - 如何使用 Materialise 线性不确定进度条作为页面预加载器?
- dart - 如何在 Dart 中循环遍历变量数组
- jquery - JSON字符串解析并显示反斜杠
- apache - TLS1.3 会话的 SSLSessionID 等效项是什么
- java - 带有工作连接和正确 SQL 语句的空结果集
- ios - 巴泽尔:settings_bundle
- linux - 运行“docker system prune”后,Docker 图像不再持久/消失。如何让他们再次坚持下去?
- java - 如何在没有 for 循环的情况下将“int []”类型的列表转换为 ArrayList?
- amazon-web-services - AWS Amplify API 错误 - 字段不是 Int 类型
- php - 在 Ubunutu 18.04 上部署的 ReactPhp