- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在使用 C 语言工作并尝试读取文件系统镜像(例如:name.IMA),并且我需要二进制形式,因为我需要逐字节读取它。在 C 中读取这些类型文件的正确方法是什么?以下不起作用:
FILE *filePointer = fopen("name.IMA","rb");
fread(buffer, fileLength, 1, filePointer);
主要问题: fread() 实际上按预期打开和读取。造成困惑的原因是 fread() 给出的返回值由于某种原因等于 1(即使读取了超过 1 个字节)。这里有什么问题吗?
最佳答案
如果您的 fread
行没有达到您的预期,我会查看 fileLength
设置的值。如果字节数多于可读取的字节数,则 fread
将返回零。
您需要记住的一件事是,fread()
返回读取的项数,而不是字节数(我的重点):
size_t fread (void *ptr, size_t size, size_t nmemb, FILE *stream);
On success,
fread()
return the number of items read. This number equals the number of bytes transferred only when size is 1.
所以这两者之间有区别:
size_t n = fread (buffer, s, 1, fp);
size_t n = fread (buffer, 1, s, fp);
第一个是读取最多 一个 个大小为 s
的元素,因此只会返回零或一个。第二个是读取最多 s
个大小为 1 的元素,因此可以返回包含 0..s
的值。
如果您想一次读取缓冲区中可以容纳的尽可能多的字节,则需要使用后者:
char buff[128];
size_t sz;
FILE *fp = fopen ("name.ima", "rb");
if (fp != NULL) {
while ((sz = fread (buff, 1, sizeof (buff), fp)) > 0)
doSomethingWith (buffer, sz);
fclose (fp);
}
关于c - 如何 fopen() .IMA 文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33750333/
有人可以在一个示例中解释shift函数的两个 iMA 参数之间有什么区别吗?根据MQL4文档: ma_shift - Moving Average shift. Indicators line off
几天来,我一直在研究 google 的 IMA(或 DFP)。 现在我需要知道如何在加载时将它们静音。我搜索了那个。找不到合适的解决办法。 注: 我没有使用任何视频播放器。因为我是在游戏加载前添加的。
我正在开发小型流音频应用程序,audiochat客户端。服务器使用IMA ADPCM音频编解码器,帧速率为8000,帧大小为256字节。 I'm using algoritm described he
我已经成功整合了 HTML5 版本的 Google IMA 广告,并且正在尝试连接 MediaElement 的 fla 项目文件。 IMA 使用可以轻松添加到舞台和配置的 Flash 组件。有没有什
我正在使用 C 语言工作并尝试读取文件系统镜像(例如:name.IMA),并且我需要二进制形式,因为我需要逐字节读取它。在 C 中读取这些类型文件的正确方法是什么?以下不起作用: FILE *file
我在没有 cocoapods 的情况下手动集成了 google SDK,因为我在静态库中使用它。我已经添加了 IMA SDK 所需的所有框架(AVFoundation 等)。 每当我尝试使用该语言设置
我正在使用 Google-IMA Android SDK 在我的应用程序中加载添加和播放视频。 来自 this link 中提供的示例应用程序, 我可以播放广告和视频。 But I am not ab
我正在尝试借助本指南在 RHEL 中设置 Linux IMA http://linux-ima.sourceforge.net/linux-ima-content.html-20110907 .我想设
我一直在尝试将我的应用程序与 webview 集成,webview 是 google 提供的 html5 sdk 的示例,该示例可以在网络中运行,但不能在 android webview Assets
我按照 How can I use a videojs plugin when I also use RequireJS 中的示例进行操作我已经准备好了: requirejs.config({ url
我正在尝试为 exoplayer 实现 google ima sdk 以进行前卷后卷广告呈现。目前我正在使用 github 链接中提到的几乎完全相同的 exoplayer 实现 https://git
我有一个使用适用于 iOS 的 Google IMA SDK v3 的应用。这让我可以围绕视频内容转换前贴片广告、中贴片广告和后贴片广告。 在初始化我的 IMAAdsRequest 对象时,我传入一个
我有一个从 http://wiki.multimedia.cx/index.php?title=IMA_ADPCM 解压缩 IMA ADPCM 的算法, 但无法将其重新压缩回 IMA ADPCM。有没
我正在尝试使用 Google IMA sdk 在 Android 上播放广告。我使用示例应用程序来解决我的问题,但出于某种原因,我只获得了广告的音频和叠加层(广告长度、阅读更多按钮等)。视频没有播放,
我想做的是使用 HTML5 在 iOS 10 上制作自动播放视频,我使用了: 但是当使用适用于 HTML5 的 IMA SDK 时,广告开始时未静音,因此自动播放将不起作用。 有没有办法
我尝试使用 IMA.js 框架创建我的第一个 javascript 同构应用程序 ( https://github.com/seznam/IMA.js-skeleton)。乍一看我有几个问题: 调用“
我正在尝试使用 video.js 播放器和谷歌运行一些测试代码 IMA plugin 我使用了插件作者提供的一个简单示例: https://github.com/googleads/videojs-i
我正在使用 swift 语言开发 iOS 应用程序。我需要在我的应用程序中实现谷歌前置视频广告,我正在实现使用 MPMoviePlayerController 播放视频。因此我可以使用 MPMovie
我正在尝试(已经几天)完成非常简单的任务:构建一个 javascript 文件,捆绑所有必要的部分以使用 Google IMA 广告播放视频,但我仍然面临一些错误(主要是 player.ads not
我们正在 ReactJS 项目中迁移到 VideoJS,除了 google IMA 插件之外,一切似乎都工作正常。 有关于如何在 React 中使用 google-ima 插件的资源吗? https:
我是一名优秀的程序员,十分优秀!