malloc 相关问题

malloc函数在C中执行动态内存分配,是标准库的一部分。有关malloc的用法,行为和实现的问题,请使用此标记。

与struct和malloc共享内存fork

我有一个fork生成的父进程和子进程之间的共享内存问题。我知道如何使用原始类型的共享内存,如此处所述。虽然我不知道如何......

回答 2 投票 1

在c中struct的成员中间调用free时会发生什么?

我只是想知道今晚free()调用struct成员时会发生什么。让我们看一下c中的简单代码。 typedef struct {int c [5]; int a [10]; int * b; } STMA; int main(){stma * ...

回答 1 投票 0

当你在main中动态分配内存时,如何处理函数中的assert()?

我有以下C函数:void mySwap(void * p1,void * p2,int elementSize){void * temp =(void *)malloc(elementSize); assert(temp!= NULL); memcpy(temp,p1,elementSize); ...

回答 4 投票 0

malloc()是否将分配的数组初始化为零?

这是我正在使用的代码:#include #包括 int main(){int * arr; int sz = 100000; arr =(int *)malloc(sz * sizeof(int)); int i; for(i = 0; ...

回答 6 投票 5

退出程序后Crouton环境不释放内存?

我是新手使用Crouton。我试图将它用于Linux环境中的一些C编程实践。无论何时我运行使用malloc()的程序,我都会得到x个字节的内存泄漏错误。 ...

回答 2 投票 0

malloc()和malloc_consolidate()中的Segfaults

当我查看gdb中的backtrace时,我的应用程序有时会主要在malloc()和malloc_consolidate()中进行段错误。我确认机器有足够的内存可用,甚至没有启动......

回答 2 投票 25

c中的2d动态int数组

我想创建一个函数,用一行增加给定的2d动态int数组。我看了几个网站,指南,教程,但一切都不一样,所以我现在很困惑。二维阵列有......

回答 1 投票 1

程序在免费malloc内存时停止工作

我使用malloc初始化了一个全局变量page_table,如下所示。里面的每个元素都是struct:page * page_table; void init_clock(FILE * fd,int num_of_frames){total_frames = num_of_frames; ...

回答 1 投票 0

C中重复的SSL_connect导致SIGSEGV

我有以下代码,我在线上获得SIGSEGV:if(SSL_connect(ssl)== FAIL)我得到的故障是:程序接收信号SIGSEGV,分段故障。 0x00007ffffe5a41e0 in ...

回答 1 投票 0

返回指向结构数组的指针

假设我必须创建一个在堆上分配的结构数组,并返回指向此结构数组的指针。 typedef struct Pair {int x; int y;配对;配对** foo(...

回答 4 投票 1

malloc如何在编译时和运行时处理? [关闭]

malloc是否用于在编译时指定 - 指针指向的缓冲区(数组)的最大大小,然后默认情况下在运行时和以后分配该最大大小的缓冲区 - 仅限于...的那一部分

回答 2 投票 -4

如何在函数中分配双指针的内存?

我试图分配在main函数中声明的双指针的内存:int main(){float ** a,** b,** c; inicializarMatriz(&a,&b,&c);在inicializarMatriz里面......

回答 1 投票 1

从C中的地址访问值

这是我的代码struct ukai {int val [1]; }; struct kai {struct ukai daddr; struct ukai saddr; }; struct kai * k,uk; uk.saddr.val [0] = 5; k =&uk; k-> saddr.val [0] = 6; unsigned int * p =(...

回答 2 投票 1

为什么malloc(1)用于存储4字节整数?

根据我的理解,malloc(x)返回一个x字节长的内存块。所以要存储一个4字节的整数,我会这样做:int * p =(int *)malloc(4); * p = 100;因为sizeof(int)为...返回4

回答 7 投票 1

释放在另一个循环中调用的函数中的alloated内存

我试图释放用户定义函数中分配的内存。我计划在嵌入式设备上运行代码,STM32F303k8具有64Kb闪存和16KB SRAM。我还没试过代码......

回答 2 投票 0

为什么我不能在这个线程完成执行后访问线程内部分配的数组?

我正在使用malloc为数组分配内存。我意识到,如果我在一个线程中使用malloc并且这个线程停止执行,我就无法访问上述数组。 #包括 ...

回答 1 投票 0

我有一段代码,我不明白为什么它在使用malloc创建数组时使用shl指令

我正在尝试理解在x86(MASM程序集)中动态分配内存到1D数组时使用shell指令(SHL)的这段代码。我想知道这个人使用背后的原因......

回答 1 投票 -1

为什么malloc分配的字节数与请求的数不同?

我有这段代码#include #包括 #包括 #包括 int main(){void * a,* b; a = malloc(16); b = malloc(16); ...

回答 12 投票 7

如何使用malloc或其他功能在Ram中分配所需的地址? [关闭]

在C语言面试中我被问到一个问题。问题是:我可以更改地址吗? struct node * root;根=(INT *)malloc的(的sizeof(int)的); printf(“%d”,root)= 10128000 //新地址:...

回答 1 投票 -3

在malloc,为什么要使用brk?为什么不直接使用mmap?

malloc的典型实现使用brk / sbrk作为从OS声明内存的主要手段。但是,他们还使用mmap来获取大量分配的块。使用是否真正有益...

回答 4 投票 6

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