Malloc 的字符串包含垃圾值

2024-04-22

我刚刚将 Objective-C 库转换为 C 库,希望能够跨平台。然而,在我将这件事发送出去进行处理之前,一切似乎都正常。

就在我收到错误的时候。

回顾一些修改,我注意到调试器中的一些东西。

就在 malloc 的字符串之后,如下所示:

char *theString = malloc(SOME_SIZE * sizeof(char));

我会看到 theString 是 \x03 而 *theString 是“3 '\003'”。

起初我认为这只是奇怪的记忆,因为我没有对它进行 strcat 或任何操作,但是奇怪的起始字符会继续存在,并在我执行类似的 malloc 的每个其他点上重复出现。

就正常处理而言,这很好。不幸的是,我不明白它是什么,否则,我只会做一些激烈的事情,比如剪掉第一个字符之类的。

有人可以向我解释这是什么以及如果我想将其安全地转换为 NSString 我如何处理它吗?


malloc 返回的值不保证设置为任何特定值。它只能保证指向您拥有的长度至少与您指定的长度一样长的内存。如果您希望内存初始化为某个值,您需要自己完成。或者使用 calloc 将内存清零。

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

Malloc 的字符串包含垃圾值 的相关文章

随机推荐

  • TypeScript 构造函数 - 环境上下文错误

    如何在 TypeScript 中创建构造函数 看了一堆指南 但语法肯定已经改变了 这是我的最新尝试 car d ts declare class Car constructor public engine string this engin
  • 带有 Flask 服务器的面向对象 Python?

    我正在使用 Flask 将一些数据处理代码公开为 Web 服务 我想要一些我的 Flask 函数可以访问的类变量 让我带你看看我被困住的地方 from flask import Flask app Flask name class MySe
  • 无法使用 python-requests 发布文件+数据

    我可以使用curl 发布文件 curl X POST i F name barca F country spain F file home messi Desktop barca png http localhost 8080 new or
  • 无法使用数组作为 Ruby Hash 的默认值? [复制]

    这个问题在这里已经有答案了 我正在向哈希键添加项目 我期望得到这样的结构 a 1 b 2 3 4 我使用数组来初始化哈希 irb gt hash Hash new gt 然后开始使用它 irb gt hash a lt lt 1 gt 1
  • Typescript 可以推断由其基类的方法实例化的扩展类实例的类型吗?

    考虑以下 Typescript 片段 class Animal constructor name string this name name name string haveBaby name string return type retu
  • 这段 C# 代码中的“&=”有什么作用?

    我遇到了一些看起来像这样的代码 string someString bool someBoolean true someBoolean someString ToUpperInvariant Equals blah 为什么我要使用按位运算符
  • 将非规范化数字刷新为零

    我在网上搜索过 但没有结果 Xcode 和 Visual C 有没有办法将非规范化数字视为 0 我本以为 IDE 首选项中有一个选项可以打开此选项 但似乎找不到它 我正在做一些跨平台音频工作 需要停止某些处理器占用资源 Cheers 您正在
  • 如何解决这个 sass 插值问题

    警告 您可能不想在此处进行插值时使用颜色值白色 它最终可能会呈现为白色 这可能会产生无效的 CSS 将颜色名称用作字符串或映射键时 请始终引用颜色名称 例如 白色 如果您确实想在此处使用颜色值 请使用 colorName 93 text c
  • 为什么要在 base::split(.$cyl) 中加点?

    在 R 中用于数据科学第21 5 1章 https r4ds had co nz iteration html shortcuts 这个语法用在基函数中split cyl 为什么里面的点 cyl 套餐purrr有一个占位符的语法 or x
  • 使用多个 txt 文件的内容创建数据框

    我是 R 编程新手 在尝试从多个文本文件创建一个数据框时遇到困难 我有一个包含 100 多个文本文件的目录 每个文件都有不同的文件名 但内容具有相似的格式 例如3 列 姓名 年龄 性别 我想将每个文本文件加载到 R 中并将它们合并到 1 个
  • Plotly Scattermapbox,无法向标记添加文本

    我正在尝试将文本添加到下面的绘图中 原始代码修改自https plotly com python lines on mapbox https plotly com python lines on mapbox import plotly g
  • Entity Framework Core 2.0 中每种类型的表

    这些是我的模型 public class Company public int CompanyId get set public string Name get set public string Address get set publi
  • TS2345:类型“number |”的参数未定义' 不可分配给'number' 类型的参数

    我正在尝试在打字稿中创建一个 chrome 扩展 我有以下代码 我尝试从后台脚本向 contentscript 发送消息 background script chrome tabs query active true currentWind
  • 纯 CSS 的 Tab 系统,anchor 避免了向标签的传播

    我正在制作一个仅使用 CSS 的选项卡系统 target and checked伪类 但我在标签内有一个锚点 并且标签不会触发 checked 如果您单击锚点 checked不会触发 因为点击位于 a 标签 但位于 a
  • 如何从sql server触发器操作TEXT、NTEXT数据

    我很难理解 TEXT NTEXT 数据不能从 sql server 触发器进行操作 是真的吗 如果没有 请解释我如何操作 SQL Server 触发器中的 TEXT NTEXT 数据 谢谢 不要使用 text 或 ntext 使用 nvar
  • ANR com.android.vending.billing.IInAppBillingService

    自从修改我的代码以使用 Android 计费库而不是示例应用程序中的旧 IABHelper 以来 我一直通过下面的跟踪收到大量 ANR 有人知道如何解决这个问题吗 跟踪上没有我的一行代码 main prio 5 tid 1 Native g
  • JSON 对象和 Javascript 对象

    我正在创建一个网络应用程序的前端 我收到 JSON 格式的所有响应 解析它并将其作为 html 格式 我查看了一些 javascript MVC 框架 即backbone js ember js 等 发现它们对于我的简单应用程序来说太过分了
  • 有没有带有 API 的 Latex Web 服务? [关闭]

    Closed 此问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 是否有一个 Web 服务 API 接受这种类型的 Latex http 请求 http some web
  • 如何使用 qt 在键盘上仅显示数字

    我在我的项目中使用 Qt Quick Virtual Keyboard 当我单击一个对象时 我想显示键盘但只显示数字 我怎样才能做到这一点 这就是我想做的 您可以使用Qt ImhFormattedNumbersOnly http doc q
  • Malloc 的字符串包含垃圾值

    我刚刚将 Objective C 库转换为 C 库 希望能够跨平台 然而 在我将这件事发送出去进行处理之前 一切似乎都正常 就在我收到错误的时候 回顾一些修改 我注意到调试器中的一些东西 就在 malloc 的字符串之后 如下所示 char