使用 malloc 循环来保证 malloc 的结果是否不好?

2024-06-23

像这样分配内存是不好的做法吗?:

FOO *foo;
while (!(foo = malloc(sizeof(FOO)))) ;

我不知道什么是不好的做法,但这并不常见。malloc()故障通常表明您的程序不太可能恢复的主要系统问题。如果您的系统不同,您的示例很可能很实用。

注意 - 这个答案假设sizeof(FOO)是“合理的”并且你的malloc()不会因为你要求太多内存而拒绝。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 malloc 循环来保证 malloc 的结果是否不好? 的相关文章

随机推荐

  • NSRemoteView 在日志中生成一条奇怪的消息

    当我在 macOS Sierra 中运行沙盒应用程序时 我在日志中找到以下消息 2016 09 21 12 08 42 787003 MyApp 1505 63581 warning
  • Firebase 数据库指向错误的数据库 URL

    我正在开发一个 Android 应用程序并尝试使用 Firebase 数据库 我尝试将数据写入数据库 但没有显示任何内容 通过 Firebase 控制台检查 我在构建中有 Firebase 库 implementation platform
  • 如果键已存在,则将值附加到键(python/jython)

    我有一个列表需要制作成字典 该列表包含具有不同值的重复 即将出现 键 如何找到这些键并将新值附加到其中 list q 1 w 2 q 7 dictionary q 1 7 w 2 提前致谢 将值放入字典列表中 以便您拥有 dictionar
  • Unicorn 和omniauth-facebook - 未初始化的常量 OmniAuth

    所以我试图让omniauth facebook 在我的生产环境中工作 它在我的机器上使用 POW 本地运行良好 我的产品环境是带有 nginx unicorn 的 ubuntu 代码是 Rails 3 2 13 unicorn 的错误是 E
  • 为什么 Play 商店不显示我的应用程序的本地化描述和屏幕截图?

    我已经在 Google Play 商店上发布了我的应用程序 现在我在我的应用程序中添加了 4 种语言英语 印地语 泰米尔语和泰卢固语 我通过 Play 商店中的商店列表选项上传了所有翻译和本地化屏幕截图 现在 Play 商店应用程序在英语和
  • 覆盖 JButton PaintComponent() 不起作用 java

    我想绘制我自己的 JButton 版本 所以我重写了paintComponent 方法 并绘制了一个渐变的roundRect 这是可行的 但之后 我想在其上绘制按钮的字符串 并且在编译时 我没有收到任何错误消息 但在运行时 我只看到 rou
  • 使用 C# 将 UTF-8 转换为 ANSI

    我是一名 NET 开发人员 被要求开发一个用 C 将 html 文件转换为 ANSI 的应用程序 ANSI 是必需的 因为转换后的文件将在 Visual Fox Pro 应用程序上运行 基本逻辑已经准备好 问题出在转换本身 我试过这段代码
  • Mathematica 8 中具有等式约束的函数最小化

    在 Mathematica 8 中使用具有简单等式的约束时 最小化不起作用 例如 FindMinimum x 2 y 2 y 1 x y 在 Mathematica 6 中工作正常 但在版本 8 中出现错误 其他人可以确认 或解释 这一点吗
  • 在地图元素上使用 for_each

    我有一个映射 我想在其中对每个数据类型对象成员函数执行调用 我还知道如何在任何序列上执行此操作 但是是否可以在关联容器上执行此操作 我能找到的最接近的答案是 Boost Bind 访问 std for each 中的 std map 元素
  • 如何发送包含 Blob 的 http 多部分 POST 请求?

    我正在使用 multipart XMLHttpRequest 在 Google Drive 帐户上上传文件 使用 google 文档中描述的语法 https developers google com drive web manage up
  • JavaFX 中画布的最大尺寸

    有谁知道JavaFX中画布的最大尺寸 从一些测试来看 它似乎是 8192 与 IE 相同 在我看来 这很奇怪 或许 可以修改吗 这可能取决于您的显卡的最大纹理大小 因为我相信 使用最常见的硬件加速渲染管道 画布最终将表示为纹理 我不太清楚
  • 找不到 gcloud 命令 - 安装 Google Cloud SDK

    我正在尝试在终端中使用以下命令在 Mac 上安装 Google Cloud SDK curl https sdk cloud google com bash 它工作得很好 但是当我进入下一步时 gcloud init 我得到以下内容 bas
  • AngularJS RequireJS Browserify 和 Javascript 模块/全局范围噩梦 [关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 我最近在 CommonJS 与 AMD 的战斗中进行了一些挖掘 这是我的发现 顺便说一句 我不是在这里说教 而是分享我的想法以获得一些建设性的见
  • Windows Azure 使用 A6 vmsize 部署云服务

    在我的云服务中 我有一个 Web 角色和辅助角色 我将 Web 角色 VM 大小更改为medium to A6 当我尝试部署到 Windows Azure 时 收到以下错误消息 s 似乎提示我错误 由于部署请求限制 无法配置此部署所需的 V
  • 在 64 位 RHEL 上安装 32 位库 (glibc),而不使用 yum

    我试图让 32 位应用程序在 64 位 RHEL 6 1 上运行 但该计算机无法访问互联网 有没有办法在 64 位 RHEL 上安装 32 位 glibc 而不使用 yum 即仅使用 RPM 安装 我从 RHEL 6 1 ISO 中获取了
  • Java 8 Eclipse 未设置根错误

    最近 我为 JavaFX 应用程序安装了 Java 8 build 124 并且开始收到以下错误 javafx fxml LoadException Root hasn t been set Use method setRoot befor
  • 应用商店拒绝在 iOs 10 上支持 IPV6 网络的应用

    我收到了来自苹果的应用程序拒绝邮件 如下所示 我们在通过连接到 IPv6 网络的 Wi Fi 运行 iOS 10 0 2 的 iPad 和 iPhone 上进行审核时 发现您的应用程序存在一个或多个错误 具体来说 应用程序在启动时仍保留在启
  • 原始 SQL 是用汇编语言还是 C 语言编写的? [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • 对于从开始到结束的循环,结束变量在循环中改变

    从测试数据开始 并运行代码 Sub TestLoop Dim LastRow As Long CurRow As Long LastRow Range A Rows Count End xlUp Row For CurRow 1 To La
  • 使用 malloc 循环来保证 malloc 的结果是否不好?

    像这样分配内存是不好的做法吗 FOO foo while foo malloc sizeof FOO 我不知道什么是不好的做法 但这并不常见 malloc 故障通常表明您的程序不太可能恢复的主要系统问题 如果您的系统不同 您的示例很可能很实