在 C 中使用 memset 表示整数数组

2023-12-04

char str[] = "beautiful earth";
memset(str, '*', 6);
printf("%s", str);

Output:
******ful earth

就像上面使用 memset 一样,我们可以只将几个整数数组索引值初始化为 1,如下所示?

int arr[15];
memset(arr, 1, 6);

不,你不能使用memset()像这样。这manpage说(强调我的):

The memset()函数填充第一个n bytes所指向的内存区域s与常量字节c.

自从int通常是 4 个字节,这不会减少它。


If you (错误!!)尝试这样做:

int arr[15];
memset(arr, 1, 6*sizeof(int));    //wrong!

然后是前 6 个int数组中的 s 实际上会被设置为 0x01010101 = 16843009。

唯一真正可以接受使用非字节数据类型重写“blob”数据的情况是memset(thing, 0, sizeof(thing));将整个结构/数组“清零”。这是有效的,因为 NULL、0x00000000、0.0 都完全为零。


解决方案是使用一个for循环并自己设置:

int arr[15];
int i;

for (i=0; i<6; ++i)    // Set the first 6 elements in the array
    arr[i] = 1;        // to the value 1.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 C 中使用 memset 表示整数数组 的相关文章

  • 检测到 NuGet 包的版本冲突

    我正在开发 ASP Net core 2 1 Web 应用程序项目 我的解决方案中有 1 个项目和 3 个其他库 它是高级架构 数据访问层 DAL 业务层 BL 公共层 CL 所以我需要添加引用来连接一些库和项目 我已经添加了CL参考我的项
  • C++ 中的软(不是:弱)引用 - 这可能吗?有实施吗?

    在 C 中我正在使用boost shared ptr and boost weak ptr自动删除不再需要的对象 我知道这些与引用计数一起工作 在 Java 中 内存由垃圾收集器管理 它将内置对象引用视为strong WeakReferen
  • 在 C++ 中分割大文件

    我正在尝试编写一个程序 该程序接受一个大文件 任何类型 并将其分成许多较小的 块 我想我已经有了基本的想法 但由于某种原因我无法创建超过 12 kb 的块大小 我知道谷歌等上有一些解决方案 但我更感兴趣的是了解这个限制的根源是什么 然后实际
  • 如何进行带有偏差的浮点舍入(始终向上或向下舍入)?

    我想以偏置舍入浮动 要么总是向下 要么总是向上 代码中有一个特定的点 我需要这个 程序的其余部分应该像往常一样四舍五入到最接近的值 例如 我想四舍五入到最接近的 1 10 倍数 最接近 7 10 的浮点数约为 0 69999998807 但
  • 为什么基类必须有一个带有 0 个参数的构造函数?

    这不会编译 namespace Constructor0Args class Base public Base int x class Derived Base class Program static void Main string a
  • 有什么工具可以说明每种方法运行需要多长时间?

    我的程序的某些部分速度很慢 我想知道是否有我可以使用的工具 例如它可以告诉我可以运行 methodA 花了 100ms 等等 或者类似的有用信息 如果您使用的是 Visual Studio Team System 性能工具 中有一个内置分析
  • try-catch 中未处理的异常

    try list from XElement e in d Descendants wix File where e Attribute Name Value Contains temp Name e Parent Parent Attri
  • 获取从属性构造函数内部应用到哪个属性的成员?

    我有一个自定义属性 在自定义属性的构造函数内 我想将属性的属性值设置为属性所应用到的属性的类型 是否有某种方式可以访问该属性所应用到的成员从我的属性类内部 可以从 NET 4 5 using CallerMemberName Somethi
  • 在 C# 中将位从 ulong 复制到 long

    所以看来 NET 性能计数器类型 http msdn microsoft com en us library system diagnostics performancecounter aspx有一个恼人的问题 它暴露了long对于计数器
  • Xamarin Android:获取内存中的所有进程

    有没有办法读取所有进程 而不仅仅是正在运行的进程 如果我对 Android 的理解正确的话 一次只有一个进程在运行 其他所有进程都被冻结 后台进程被忽略 您可以使用以下代码片段获取当前正在运行的所有 Android 应用程序进程 Activ
  • 为什么 FTPWebRequest 或 WebRequest 通常不接受 /../ 路径?

    我正在尝试从 ftp Web 服务器自动执行一些上传 下载任务 当我通过客户端甚至通过 Firefox 连接到服务器时 为了访问我的目录 我必须指定如下路径 ftp ftpserver com AB00000 incoming files
  • “MyClass”的类型初始值设定项引发异常

    以下是我的Windows服务代码 当我调试代码时 我收到错误 异常 CSMessageUtility CSDetails 的类型初始值设定项引发异常 using System using System Collections Generic
  • std::bind 重载解析

    下面的代码工作正常 include
  • Qt - 设置不可编辑的QComboBox的显示文本

    我想将 QComboBox 的文本设置为某些自定义文本 不在 QComboBox 的列表中 而不将此文本添加为 QComboBox 的项目 此行为可以在可编辑的 QComboBox 上实现QComboBox setEditText cons
  • 从匿名类型获取值

    我有一个方法如下 public void MyMethod object obj implement 我这样称呼它 MyMethod new myparam waoww 那么我该如何实施MyMethod 获取 myparam 值 Edit
  • 如何检测 C# 中该字典键是否存在?

    我正在使用 Exchange Web 服务托管 API 和联系人数据 我有以下代码 即功能性的 但并不理想 foreach Contact c in contactList string openItemUrl https service
  • Fluent NHibernate 日期时间 UTC

    我想创建一个流畅的 nhibernate 映射来通过以下方式映射 DateTime 字段 保存时 保存 UTC 值 读取时 调整为本地时区值 实现此映射的最佳方法是什么 就我个人而言 我会将日期存储在 UTC 格式的对象中 然后在读 写时在
  • 热重载时调用方法

    我正在使用 Visual Studio 2022 和 C 制作游戏 我想知道当您热重新加载应用程序 当它正在运行时 时是否可以触发一些代码 我基本上有 2 个名为 UnloadLevel 和 LoadLevel 的方法 我想在热重载时执行它
  • 如何确定母版页中正在显示哪个子页?

    我正在母版页上编写代码 我需要知道正在显示哪个子 内容 页面 我怎样才能以编程方式做到这一点 我用这个 string pageName this ContentPlaceHolder1 Page GetType FullName 它以 AS
  • 如何创建向后兼容 Windows 7 的缩放和尺寸更改每显示器 DPI 感知应用程序?

    我是 WPF 和 DPI 感知 API 的新手 正在编写一个在 Windows 7 8 1 和 10 中运行的应用程序 我使用具有不同每个显示器 DPI 设置的多个显示器 并且有兴趣将我的应用程序制作为跨桌面配置尽可能兼容 我已经知道可以将

随机推荐

  • AR Drone 2 和 ffserver + ffmpeg 流媒体

    我希望能够将 AR Drone 2 的视频源从 Debian 服务器重新传输到 Flash 我知道 AR 无人机使用编解码器 p264 我对视频编解码器完全陌生 所以我不知道什么适合我想要实现的目标 我已经能够从 AR 无人机流式传输视频源
  • MySQL触发器:在插入时将auto_increment值复制到另一列

    我需要在插入时将 auto increment ID 值复制到另一列中 我想我需要一个 插入后 触发器 因为否则新 ID 是未知的 我试过这个 IF NEW content IS NULL THEN SET NEW content NEW
  • Spring boot:不支持请求方法“PUT”

    我得到了Request method PUT not supported击中时出错PUTRestful API 上的方法来上传文件 以下是上传到此票证的信息 客户端日志 休息控制器 Spring Boot 应用程序配置 Tomcat日志 P
  • 保存 CLOS 对象

    将任何 Common Lisp 结构对象保存到文件 可读 似乎相对简单 例如 defun save structure object object filename with open file stream filename direct
  • 同一应用程序中的 Django 不同时区

    我正在开发一个关于休假管理的 Django 应用程序 其中有来自不同国家的员工 我将创建休假时的数据存储到数据库中 现在 我希望插入数据库的日期时间是该特定员工工作地点的当前当地时间 例如 假设 X 先生在印度工作 Y 在纽约工作 如果X申
  • 使用 WSDL 中的 WCF 托管服务 - SVCUtil 为方法生成详细类型

    我有一个来自已发布的 ASMX Web 服务的 WSDL 文件 我追求什么 正在创建一个模仿真实服务的模拟服务以进行测试 在 WSDL 中 我使用 SvcUtil exe 生成代码 显然它也生成 服务器端接口 问题是它生成的接口非常笨重 例
  • UltragridCells 中的标准格式与自定义格式

    我正在尝试格式化Ultragridcell使用下面的代码 它工作正常 Code DefaultEditorOwnerSettings editorSettings DateTimeEditor datetime editor editorS
  • REG 添加 REG_MULTI_SZ 多行注册表值

    要添加 REG MULTI SZ 多行注册表值 我可以这样做 reg exe ADD HKLM path to registry key v RegistryValue t REG MULTI SZ d abc 0def 0 这将添加 ab
  • CMake错误:本项目中使用了以下变量,但它们被设置为NOTFOUND

    我正在 CentOS 6 上为项目运行 CMake 构建脚本 但收到以下错误 CMake Error The following variables are used in this project but they are set to
  • 快速排序与合并排序[重复]

    这个问题在这里已经有答案了 为什么快速排序比合并排序更好 See 维基百科上的快速排序 通常 快速排序显着 在实践中比其他 nlogn 更快 算法 因为它的内循环可以 在大多数情况下得到有效实施 架构以及大多数现实世界中 数据 可以进行设计
  • 使用 HttpClient 将字节数组发送到 Web API 服务器

    我想将此数据发布到 Web API 服务器 public sealed class SomePostRequest public int Id get set public byte Content get set 使用此代码作为服务器 R
  • 本机查询上的 Mockito NullPointerException

    我的查询对象有问题 即使我使用查询模拟对象对其进行存根 它也会变为空 这是代码 Query query getEntityManager createNativeQuery queryString SomeRandom class retu
  • 文件java替换字符

    我必须检查文本文档是否存在 然后我必须将其中的字母替换为 o 我已经完成了如何替换 char 的第一部分 class FDExists public static void main String args File file new Fi
  • 如何在 Bash 中编写“for”循环?

    我正在寻找基本循环 例如 for int i 0 i lt MAX i doSomething i 但对于巴什来说 From 这个网站 for i in seq 1 10 do echo i done
  • 如何在 pygame 中添加敌人? [复制]

    这个问题在这里已经有答案了 我正在用 pygame 制作一个简单的游戏 目标是躲避来袭的敌人 我想要一个领带战斗机图像随机落下 并且 xwing 必须躲避它们 否则你就会死 如何在我的脚本中实现随机平局战士 在我的代码中 我收到一个错误 指
  • java.lang.NoClassDefFoundError: org/springframework/core/io/ResourceLoader

    我正在使用 spring 进行一些测试 并且收到此错误 java lang NoClassDefFoundError org springframework core io ResourceLoader at org springframe
  • DatagridView 复选框已选中?

    我在 datagridview 窗口窗体中有一个复选框 并且有一个事件处理程序 cell Click 在单元格上单击 我检查 datagridview 列中的复选框 如果也选择了该单元格 即未选中该复选框 仅选择了 datagrid vie
  • python中父进程退出时如何杀死子进程?

    fork child py 中的代码 from subprocess import Popen child Popen ping google com stdout subprocess PIPE stderr subprocess PIP
  • PDFKit 正在垂直翻转用图像初始化的 PDFPage

    不确定这是否是 iOS 上的 PDFKit 测试版中的错误 但是当我基于图像数组创建 PDFDocument 使用 PDFPage image 时 它会垂直翻转图像 IBAction func export sender Any let a
  • 在 C 中使用 memset 表示整数数组

    char str beautiful earth memset str 6 printf s str Output ful earth 就像上面使用 memset 一样 我们可以只将几个整数数组索引值初始化为 1 如下所示 int arr