dynamic-memory-allocation 相关问题

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

动态结构初始化和计数器实现

让我们说我有这个结构typedef struct Stack {int firstPlayerScore; int secondPlayerScore; int gamesCount; }堆;并使用此函数来初始化值:void ...

回答 2 投票 0

使用C中指针的数组的最大值和最小值

我尝试使用指针找到数组的最大值和最小值,但是在输入值并显示它们之后,我的程序崩溃了,我不知道为什么。我的错误是什么?这是我的代码。...

回答 1 投票 0

具有动态数组成员在内存中分配位置的C结构

我想知道在此示例程序中foo和arr *在哪里分配。 foo是否以恒定大小分配在堆栈上,还是在* arr上使用malloc时它会更改?如果我要更改foo.arr [i] ...

回答 2 投票 0

CUDA在__device__函数中分配内存

CUDA中是否有一种方法可以在设备端功能中动态分配内存?我找不到执行此操作的任何示例。从CUDA C编程手册中:B.15动态全局内存...

回答 1 投票 12


Function free()不会从向量中释放内存

为什么即使我已经使用过free(a)从中释放内存,为什么我仍可以使用相同的向量?那样的话,我的意思是,从内存中释放它之后,我仍然可以使用相同的向量进行操作。这是一个功能吗...

回答 1 投票 0

您可以在C ++中使用'new'模拟动态数组大小吗?

我知道您可以使用malloc创建一个动态大小的数组,但是我对使用new进行相同的操作感兴趣,部分原因是malloc在C ++中被认为是不好的做法,并且出于好奇。 ...

回答 3 投票 3

对象向量是否在C ++中分配在堆或堆栈上?

我已经看到很多与此主题相关的类似问题,但是我没有看到对该问题的明确答案。考虑以下代码:typedef struct Student {int id; }学生;向量

回答 2 投票 0

作为参数传递的Realloc可变大小2D数组-C

首先,如果这是一个重复的问题,我想道歉。但是我找不到任何答案来解释如何使用可变大小的数组正确执行此操作。直接进入代码,我得到了...

回答 1 投票 1

关于此sml递归函数的几个问题

当调用f(x-1)时,它调用f(x)= x + 10还是f(x)= if ...这是尾递归吗?我应该如何使用静态/动态分配重写它?让乐趣f(x)= x + 10让乐趣f(x)=如果...

回答 1 投票 0

与动态内存分配C ++混淆

我对动态内存分配有些困惑,我希望有人可以帮我清除它。假设我们有一个程序:int length = 0; cout <

回答 1 投票 1

如何在无穷数组中进行动态分配

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

回答 1 投票 0

如何在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

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