dynamic-memory-allocation 相关问题

动态内存分配,通常在没有垃圾收集或强制或自动引用计数的语言环境中,是指进程或向操作系统询问可变大小的内存块。

如何在C中不受限制地动态分配数组

好吧,我想更改结构的编写方式,目前我使用数组,并且需要限制其使用,但是我想使用一种方法来创建一个动态数组,其大小与读取的大小相同,...] >

回答 1 投票 1

在C中创建动态数组,但未指定最大大小

我现在正在重新研究C,并且一直有人告诉我,在C中,我们必须定义将具有数组的最大大小,以便可以在内存中保留足够的空间。我的意思是:#include&...

回答 1 投票 1

我应该如何通过免费传递const char指针来释放char指针? [处于保留状态]

我在main.c文件中具有以下代码:#include #include #include struct mystruct {const char * name; int x;}; char * test_calloc_char_p(const char * ...

回答 2 投票 -3

在函数中使用动态分配的数组不起作用

我已经搜索了所有互联网,但是没有找到类似的东西。我尝试做的非常简单:1)读取给定大小的数组,2)对其进行排序。如果我分配的数组大小足够大,则...

回答 1 投票 -2

重新分配时堆内存使用过多

[Valgrind说分配了42 718个字节,但是,当我看到调用重新分配过程的次数为3或6次时,变量currentLength和currentLineLength是10 20 30 ...

回答 1 投票 0

如何释放重新分配和分配的内存?

如何释放在开始时已经重新分配并随后重新分配和重新分配的内存?这是我的尝试,但是valgrind说有6个分配和6个释放,...

回答 1 投票 0

为什么看起来像是将一个int分配给int *一样正确?

第二个赋值给出一个错误(不能将类型为“ int”的值赋给类型为“ int *”的实体),为什么在第一个赋值中不会显示相同的错误? #include

回答 2 投票 1

free():在tcache 2中的const char *中检测到了double free *

我在main.c文件中具有以下代码:#include #include #include struct mystruct {const char * name; int x;}; char * test_calloc_char_p(const char * ...

回答 1 投票 0

动态分配的属性和继承

我已经写了两节课。在基础课中,我有属性age,它是动态分配的。我尝试在Dog类中使用它。该代码执行了,但是给了我输出:哺乳动物创建狗创建方式...

回答 3 投票 -1

C-将内存分配给指向结构中成员的指针

我已经看过很多其他问题,但是我仍然似乎无法弄清楚如何初始化指向同时也是指针的struct成员的指针。给定指向结构的指针(其中...

回答 1 投票 0

有没有一种方法可以在C中分配内存,并在分配过程中将其初始化为非0的值?

我想知道是否有一种方法可以将字符串数组初始化为我在内存分配期间确定的值,因此它不会包含任何垃圾,并且空字符将放置在正确的位置。我...

回答 2 投票 0

填充在动态内存分配中的重要性

我正在尝试实现一个堆(带有页眉/页脚的隐式空闲列表),并确定是否应在其中添加填充。添加护垫有什么实际好处?我以某种方式阅读了它……

回答 2 投票 2

如果我尝试存储的值大于动态分配期间指定的值,为什么c编译器不会引发错误?

这是我尝试过的。我甚至还没有以\ 0字符结束我的字符串。 #include #include #include int main(){int size = 5;字符* ...

回答 1 投票 0

如何使我的m_refcount变量打印出我想要的值而不是垃圾?

我正在尝试将一个名为m_refcount的size_t指针动态分配给一个新的size_t变量,并使其从0开始递增,以表明存在一个指向新对象的SmartPtr对象...

回答 1 投票 0

C样式编码和动态数组

这个问题是关于C中与结构或数组相关联的malloc。我注意到有两种分配内存的方法,我无法分辨它们之间的区别。 char * arr =(char *)malloc(...

回答 2 投票 0

将内存池与自定义分配器一起用于STL容器

我希望能够将需要从中分配内存的内存池传递给STL容器(矢量,unordered_map等)。我发现了这个问题,但没有解决特定的问题...

回答 1 投票 0

使用递归读取一行并返回指向字符串的指针

我需要创建一个char * read_line(void)函数,该函数以递归方式读取字符,因此每次进行递归调用时,它都会创建一个本地char变量,当输入字符已被读入时,它可以...

回答 1 投票 0

返回C ++中动态数组元素的引用吗?

这是您如何返回对索引为i的动态分配数组元素的引用? int&dynamic_array :: operator [](unsigned int i){if(i> = get_size())throw ...

回答 2 投票 2

为什么我插入前两个输入后此程序崩溃

我必须在函数中进行动态分配(双指针),然后我必须在矩阵中放入一些数字,然后对其进行释放,我还尝试写**矩阵而不是*(matrice [i] )...

回答 1 投票 -1

为什么我的删除功能会不断出现分段错误

我有一个作业,需要使用重载的析构函数来删除动态分配的指针。但是,当它运行时,我的一些指针会被删除,直到出现一个...

回答 2 投票 1

© www.soinside.com 2019 - 2024. All rights reserved.