问题标签 [unsafemutablepointer]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1317 浏览

swift - 转换 UnsafeMutablePointer到 UInt8

我正在尝试将此Int16可变指针转换UInt8为写入输出流。我尝试使用该功能.withMemoryRebound,但我不知道如何正确使用。我想用这个功能来做,我试过一次但没有成功。我可以使用下面的代码得到一些东西,但我认为它不正确。

我目前正在使用 Swift 4,有什么可以做的吗?谢谢你,我很感激你的耐心。

0 投票
1 回答
2335 浏览

swift - 将 UnsafeMutablePointer 转换为 UnsafePointer

我在我的 Swift 项目中使用了一个 C 库,其中一个函数需要 aUnsafePointer<UnsafePointer<UInt8>?>!作为输入输出参数,我应该在其中传递我的数据。但问题是我有这些数据UnsafeMutablePointer<UnsafeMutablePointer<UInt8>?>!类型。

我的问题是 -在 Swift 3中转换UnsafeMutablePointer为最有效和最简单的方法是什么?UnsafePointer这些指针“在纸上”并没有太大的不同,它们与技术背景也不应该有太大的不同,但我找不到关于该主题的有价值的信息。

任何帮助,将不胜感激。谢谢

0 投票
1 回答
1519 浏览

ios - UnsafeMutablePointer 指向 Array 元素

错误:无法为UnsafeMutablePointer<Int>具有类型参数列表的类型调用初始化程序(inout Int)

为什么后一个不编译?我在这里有什么遗漏吗?


我想做下面的代码片段。

我怎样才能达到上述预期的结果?

0 投票
1 回答
422 浏览

ios - 我怎样才能投射 UnsafePointer>? 到 UnsafeMutablePointer?>!

我有一个需要在 Swift 中与之交互的 C API。其中一个函数将指针数组作为参数,由 Swift 导入为

Swift端对应的输入是AVAudioPCMBuffer.floatChannelData,定义为

UnsafePointer<UnsafeMutablePointer<Float>>?

我无法在两者之间进行投射。我试图通过执行以下操作使其可变:

那没有用。Swift 指针类型之间的转换非常令人沮丧。任何帮助将不胜感激。

谢谢

0 投票
1 回答
2261 浏览

swift - “'deinitialize()' 已弃用:deinitialize(count:) 的默认参数已被删除”Xcode 中的警告

我正在尝试UnsafeMutablePointer使用以下代码取消初始化:

这之前运行良好,但 Xcode 9.3 向我发出了警告:

'deinitialize()' 已弃用:deinitialize(count:) 的默认参数已被删除,请明确指定计数

我该怎么做?

0 投票
0 回答
42 浏览

swift - 'initializeMemory(as:at:count:to:)' 已弃用

照原样,我使用以下代码在 UnsafeMutableRawPointer 的索引处设置一个值(指针指向一个数组):

这有效并设置ptridxto someValue。但是 Xcode 给了我一个警告,说该方法已被弃用,并建议我initializeMemory(as:repeating:count:)改用。但是,这种方法没有索引参数。

所以,我的问题是:我应该使用哪个函数来在某个索引处适当地设置 UnstableMutableRawPointer 的值?

0 投票
2 回答
2704 浏览

ios - 如何投射 UnsafeMutableRawPointer!到 UnsafeMutablePointer在 Swift 3.0 或更新版本中?

我正在为我的 iOS 应用程序使用 Accelerate 库。几年前我在 Swift 2.0 中构建了这个应用程序,它运行良好。现在 Swift 更新到 3.0 和 4.0,我必须将大部分代码转换为当前语法。我已经运行了转换器,但仍然有一些语法错误。这是我最难解决的问题。我似乎找不到一种同样简洁的方法来解决它。

我为图像的基本算术运算制作了函数。这是其中之一:

该类Image有一个字段buffer是 avImage_Buffer并且定义如下,

问题: 调用buffer.data返回一个UnsafeMutableRawPointer!. 该vDSP_add函数需要UnsafeMutablePointer<Float>其参数。我曾经能够立即将它投射到一个UnsafeMutablePointer<Float>物体上。看起来初始化程序现在已弃用。因此,在像这样的代码上let leftOperand = UnsafeMutablePointer<Float>(left.buffer.data),我收到了这个错误

我不知道我是否在这里忽略了一些非常简单的事情,但我仍然没有解决这个问题。但是,我正在寻找一种不需要使用循环手动复制每个元素的解决方案,因为该函数在应用程序中被非常频繁地调用。

只是一些可能有帮助的文档链接:

先感谢您!

0 投票
0 回答
115 浏览

arrays - 指向二维数组的 Swift 原始指针

我有一个 UnsafeMutableRawPointer 类型的指针(下面的代码中的 buffer.contents()),它是一个长度为 N 的缓冲区并保存 16 位无符号整数。我想将其视为 16 位无符号整数的大小为 K x L(其中 K*L = N)的二维数组。如何将其转换为 2D 数组,以便可以将其打印为 2D 数组或更好,查看调试器窗口中的内容?这就是我所做的,使用这个指针我可以一个一个地遍历成员,但我不能一次性可视化整个数组。

0 投票
1 回答
1012 浏览

swift - Generating Float32 Array (Float32 PCM data) using CMSampleBuffer

I get the callbacks from camera with for audio with data in the format of CMSampleBuffer but I am unable to convert this data to PCM data.

I followed the docs provided by Apple copyPCMData, UnsafeMutablePointer, AudioBufferList but all I get is 0.0 at the end.

Here is my code:

0 投票
1 回答
109 浏览

arrays - Swift:代码由于某种原因崩溃

我是 Swift 的新手,我正在网上学习课程,但不幸的是他们没有回答我的问题。我相信答案很简单,但由于我是初学者,我希望这里的人能回答我。

上面的代码注释中有一些问题(“<--”)。当我运行访问者时,当我尝试修改索引 == 8 处的像素时出现崩溃。

我究竟做错了什么?