问题标签 [memset]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
6 回答
42347 浏览

c - C中的memset和memcpy有什么区别

我已经阅读了函数标题,但我仍然不确定在用例方面到底有什么区别。

0 投票
16 回答
71209 浏览

c# - C# 中的 memset 等价物是什么?

我需要byte[]用一个非零值填充 a 。如何在 C# 中执行此操作而不遍历byte数组中的每个?

更新:评论似乎将其分为两个问题-

  1. 是否有框架方法来填充可能类似于的 byte[]memset
  2. 当我们处理一个非常大的数组时,最有效的方法是什么?

正如 Eric 和其他人所指出的,我完全同意使用简单的循环就可以了。问题的重点是看看我是否可以学到一些关于 C# 的新知识:) 我认为 Juliet 的并行操作方法应该比简单的循环更快。

基准测试: 感谢 Mikael Svenson:http ://techmikael.blogspot.com/2009/12/filling-array-with-default-value.html

事实证明,for除非您想使用不安全的代码,否则简单循环是可行的方法。

很抱歉在我的原始帖子中没有更清楚。Eric 和 Mark 的评论都是正确的;肯定需要有更集中的问题。感谢大家的建议和回复。

0 投票
11 回答
35334 浏览

c++ - C++ 程序员应该避免 memset 吗?

听说c++程序员应该避免memset,

所以考虑到上面的代码,如果你不使用 memset,你怎么能让一个 [1..1024] 填充零?C++ 中的 memset 有什么问题?

谢谢。

0 投票
7 回答
18651 浏览

c++ - char* 上 memset 的 C++ 等效项

我有这个代码

我知道使用 memcpy 和 memset 是不可以的,但我还没有完全理解如何在 C++ 中使用它,最好没有 std。

有人知道吗?谢谢你。

0 投票
3 回答
173 浏览

c - 我可以在 c 中指定一个类似 Java 的“构造函数”吗?

我想在 c 中“构造”(阅读:malloc 和 memset)我的哈希表。为此,我创建了一个函数,如下所示:

鉴于该表将被声明为

在输入此代码之前,当我从 maketable 返回时,我不会丢失任何东西,对吧?

编辑:是否传递tablemaketable()确保只要我更改table指向的数据,更改就会被保留?

编辑二:我正在尝试分配一个指针数组,指向指向 hash_entries 的指针

0 投票
1 回答
946 浏览

c++ - 创建用户定义类的实例并打开文件后 memset 出现问题

我对 memset 有一个奇怪的问题,这与我在它之前创建的一个类和我在构造函数中打开的一个文件有关。我正在使用的类通常读取一个数组并将其转换为另一个数组,但这并不重要。我正在使用的课程是:

其他函数并不重要,因为我已经停止调用它们并且问题仍然存在。本质上,我已将其范围缩小到我的构造函数:

我还在构造函数中读取了文件,但我发现如果我不读取矩阵并打开文件,问题仍然存在。本质上,我已将其范围缩小到如果我注释掉 memset 正常工作的这两行,否则它不会。

现在回到我遇到的问题的背景下:我为矩阵编写了自己的简单包装类。它没有太多功能,我只需要在项目的下一部分中使用 2D 数组,并且让一个类处理所有内容对我来说更有意义。

头文件:

司机:

我的主程序运行:

当我在未注释输入行的情况下运行它时,我得到:

我真的不知道内存中发生了什么导致这种情况,如果我将 memset 替换为:

然后它可以完美运行,如果我不打开文件也可以。如果它有助于我在 Ubuntu 上运行 GCC 64 位版本 4.2.4。我假设 memset 的某些功能我没有正确理解。

0 投票
2 回答
2946 浏览

c++ - Memset 中的异常

当尝试执行 memset 时,会出现以下异常

“SendOutDllTestExe.exe 中 0x1023af7d (PxSmartInterface.dll) 处的未处理异常:0xC0000005:访问冲突写入位置 0x40e3a80e。”

我的 memset 语句看起来像这样

memset(lpStatus, 0, csStatus.GetLength());

0 投票
12 回答
131443 浏览

c - 在 C 中将二维数组归零的最快方法是什么?

我想在 C 中反复将一个大型二维数组归零。这就是我目前所做的:

我试过使用 memset:

但这仅适用于一维数组。当我 printf 二维数组的内容时,第一行为零,但随后我得到了大量随机大数并且它崩溃了。

0 投票
4 回答
2372 浏览

c++ - C++ 内存分配和链表实现

我正在编写软件来模拟“first-fit”内存分配模式。

基本上,我分配了一大块 X 兆字节的内存,并在根据架构请求块时将其细分为块。

我使用一个名为“node”的链表作为每个内存块的标题(这样我们就可以找到下一个块,而无需繁琐地循环遍历每个地址值。

`

但是最后一行返回:

我明白为什么这是无效的..但是我怎样才能将我的节点放入我新分配的内存的指针位置?

0 投票
5 回答
1680 浏览

c++ - MemSet & MemCopy

我正在编写一个内存分配器,我需要一种将整数存储在一块内存中的方法。这个整数将表示块的大小,因此我可以在给出指向开头的指针的情况下导航到结尾。

这是我的测试示例:

// 编辑:为 testInt 声明空间 int* testInt = new int;

这会在倒数第二行引发分段错误。

我想做的事情有意义吗?

如果是这样,正确的方法是什么?

非常感谢大家的帮助!!问题解决了 :-)