如何截断C char*?

2024-03-13

就如此容易。顺便说一句,我正在使用 C++。我已经阅读了 cplusplus.com 的 cstdlib 库函数,但我找不到一个简单的函数。 我知道字符的长度,我只需要erase最后三个字符。我可以使用 C++ 字符串,但这是用于处理文件,它使用 char*,并且我不想进行从字符串到 C 字符的转换。


如果您不需要将字符串复制到其他地方并且可以更改它

/* make sure strlen(name) >= 3 */
namelen = strlen(name); /* possibly you've saved the length previously */
name[namelen - 3] = 0;

如果您需要复制它(因为它是字符串文字或者您想保留原始内容)

/* make sure strlen(name) >= 3 */
namelen = strlen(name); /* possibly you've saved the length previously */
strncpy(copy, name, namelen - 3);
/* add a final null terminator */
copy[namelen - 3] = 0;
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何截断C char*? 的相关文章

随机推荐

  • 数据流/apache beam 窗口中字节数的触发窗口

    我有一个简单的工作 将数据从 pub sub 移动到 gcs pub sub 主题是一个共享主题 具有许多不同大小的不同消息类型 我希望结果在 GCS 中相应地垂直分区 架构 版本 年 月 日 该父键下应该是当天的一组文件 并且文件的大小应
  • 加载后如何获取iframe主体?

    我需要在 iframe 加载后获取 iframe 主体 document getElementById frame contentDocument body假设 iframe 的 ID 是 将以纯 JavaScript 形式提供给您fram
  • 如何通过友好名称打开串口?

    友好名称 显示在 设备管理器 中 端口 COM 和 LPT 下的名称 编辑 下面提供了两个解决方案 一个使用 WMI 另一个使用 SetupAPI 贴出今晚的代码 供大家欣赏 public class SetupDiWrap static
  • 如何为两个Windows窗体应用程序共享一个IsolatedStorage?

    我在一个解决方案中有两个 Windows 窗体应用程序和库 Library类可以在IsolatedStorage中创建新的文件夹和文件 并列出IsolatedStorage中的所有文件和文件夹 第一个应用程序使用库类创建新文件夹 文件 我希
  • 如何在android中将UTC时间戳转换为设备本地时间

    我需要将从服务器获取的 UTC 时间戳转换为本地设备时间 目前 我的时间有 5 小时的差异 例如 当我发布到服务器时 发布时间显示为 5 小时前而不是一秒前 我该如何解决这个问题 下面是我所做的代码 long timestamp curso
  • 在 Spring Security 表单登录页面中获取原始请求 url

    我在我的 spring 安全配置文件中声明了以下内容 http www springframework org schema security spring security 2 0 1 xsd http www springframewo
  • 如何获取TextView的文字颜色?

    在给定的代码中 lbl 0 getTextColor 给出错误 但我不知道如何获取 java 文件中 textview 的文本颜色 请帮助我 public void angry View v if lbl 0 getTextColor Co
  • android中的权限请求代码

    请帮助我获取权限 WRITE EXTERNAL STORAGE 和 WRITE SETTINGS 的请求代码 另请让我知道请求代码的来源 一个简单的演示 Here thisActivity is the current activity i
  • Ember 数据 1.0.0:与每种类型的适配器和序列化器混淆

    我正在从 Ember 数据 0 13 迁移到 1 0 0 beta 根据文档https github com emberjs data blob master TRANSITION md https github com emberjs d
  • MS Access 插入不重复

    微软访问2003 表主 手机号文本 255 名字文本 255 姓氏文本 255 地址文本 255 表温度 手机编号文本 255 名字文本 255 姓氏文本 255 地址文本 255 主要有100条记录 临时有 30 条记录 两个表都有 10
  • 发送图像并使用 json 返回它?

    我试图使用 json 将图像发送到 php 中的 web 服务 但客户端 cnt 读取图像 当我把它还回来的时候
  • 在 Java 中创建不依赖 if-else 的工厂方法

    目前我有一个方法 它充当基于给定字符串的工厂 例如 public Animal createAnimal String action if action equals Meow return new Cat else if action e
  • 如何让CSS网格项占用剩余空间?

    我有一张用 CSS 网格布局构建的卡片 左侧可能有一个图像 右上角有一些文本 右下角可能有一个按钮或链接 在下面的代码中 如何使绿色区域占用尽可能多的空间 同时使蓝色区域占用尽可能少的空间 绿色应将蓝色区域尽可能向下推 https jsfi
  • 如何使用 Spring AsyncResult 和 Future Return

    我有一个公共接口 Synchronous 它暴露给多个服务层类 它的目的是根据传递的 id 查找对象图 执行一些业务逻辑 然后将其传递给 Spring 异步方法 Asynchronous doWork 来完成其余的任务 我正在尝试使用 Sp
  • 在 React 中如何设置文档标题?

    我想为我的 React 应用程序设置文档标题 在浏览器标题栏中 我尝试过使用反应文档标题 https github com gaearon react document title 似乎已经过时 和设置document title in t
  • 在尝试发送短信之前检查 Android 中的网络覆盖范围

    我想为 Android 智能手机创建一个应用程序来检查手机是否处于飞行模式 如果是 应用程序会使手机退出飞行模式 并检查是否有任何网络连接可以发送短信 当我说网络连接时 我指的是发送短信的手机网络覆盖范围 我不想检查互联网连接 如果有网络连
  • WPF DataGrid 网格线在另存为 PDF 时不可见

    我正在使用 DataGrid 来表示 WPF 应用程序中的一些数据 在我使用 PDFSharp 将具有 DataGrid 的特定 WPF 窗口保存到 PDF 的功能中 我遇到一个问题 即当以较小的查看百分比查看保存的 PDF 时 DataG
  • 我的 Rails 和 Cocoa 应用程序之间的 SHA1 哈希值不匹配

    我有一个 Cocoa 应用程序将一些数据以及该数据的 SHA1 哈希值发送到 Rails 应用程序 该应用程序验证数据和哈希值是否匹配 但它们不匹配 可以肯定的是 我已经记录了在 Rails 和 Cocoa 端散列到控制台的数据的十六进制版
  • 使用回溯的数独求解器

    我最近一直在研究回溯数独求解算法 目前我想问一下我应该如何将我的solve 方法从void更改为boolean 我正在使用一个非常简单的回溯算法 它目前工作正常 但我宁愿有一个布尔值而不是一个空值 因为有一个打印堆栈不是很好 Thanks
  • 如何截断C char*?

    就如此容易 顺便说一句 我正在使用 C 我已经阅读了 cplusplus com 的 cstdlib 库函数 但我找不到一个简单的函数 我知道字符的长度 我只需要erase最后三个字符 我可以使用 C 字符串 但这是用于处理文件 它使用 c