dynamic-memory-allocation相关内容

为什么要使用_mm_malloc? (相对于_aligned_malloc,alligned_alloc或posix_memalign)

有获取的内存块对齐的几个选择,但他们非常相似,主要问题归结为你的目标是什么语言的标准和平台。 C11 无效* aligned_alloc(为size_t对齐,为size_t大小) POSIX INT posix_memalign(无效** memptr,为size_t对齐,为size_t大小) 视窗无效* _aligned_malloc(为size_t长度size_t对齐); ..
发布时间:2016-08-23 11:15:40 C/C++

在“C”的问题动态内存分配

我在写使用的东西的malloc一个code,然后面临的一个问题,所以我写了一个测试code这实际上总结了整个混乱,低于:: #包括LT&;&stdio.h中GT; #包括LT&;&stdlib.h中GT; #包括LT&;&error.h GT;诠释的main() { 为int * p = NULL; 无效* T = NULL; 无符号短* D = NULL; ..
发布时间:2016-08-23 10:06:45 C/C++

对GPU进行结构的动态数组的内存分配

我有问题,通过结构的阵列GPU内核。我在此基础上的话题 - cudaMemcpy分段错误,然后我写了某事是这样的: 的#include<&stdio.h中GT; #包括LT&;&stdlib.h中GT;结构测试{ 的char *数组; };__global__无效内核(测试* dev_test){ 的for(int i = 0;我小于5;我++){ 的pri ..
发布时间:2016-08-22 15:49:43 C/C++

是否有任何其他半/便携的方式来动态分配内存?

这样的: 的char * BUF = NULL; scanf函数(“%MS”,&安培; BUF); 会得到一个动态分配的字符缓冲区。我知道这是仅限于与海湾合作委员会(特别是glibc的2.7版本)。编译code 我也知道,“正确”和简单的方法是只使用的malloc()(朋友)来获得内存。 我很好奇,但是,还有没有其他的便携式或半便携式 * 实现了那里获得动态分配的内存?我觉得技巧和内存分配的 ..
发布时间:2016-08-22 15:22:05 C/C++

realloc()的无效老大小

我做的KandR C编程书乐趣的练习。该计划是寻找从一组由用户输入线最长行然后打印。 下面是我写(部分,有些部分是直接从书中获取): - 的#include<&stdio.h中GT; #包括LT&;&stdlib.h中GT;INT MAXLINE = 10; INT增量= 10;无效副本(CHAR最长的[],CHAR线[]){ INT I = 0; 而((最长的[I] =行 ..
发布时间:2016-08-21 21:53:52 C/C++

为指针数组动态内存分配

我想写一个程序,读取一系列从一个文本文件字符串和字符串数组存储这些,每个元素动态分配内存。我的计划是使用指针存储阵列中的每个字符串,然后成长数组的大小为更多的人在读。我无法理解,为什么我的测试code以下无法正常工作。这是一个可行的主意? 的char * APTR; APTR =(字符*)malloc的(的sizeof(字符));APTR [0] =“这是一个测试”; 的printf(“%S”, ..
发布时间:2016-08-21 20:12:23 C/C++

从而导致错误的malloc函数(动态内存分配),当它是全球使用

#包括LT&;&stdio.h中GT; #包括LT&;&string.h中GT; 字符* Y; Y =(字符*)malloc的(40); //这里给出了一个错误 诠释的main() { 的strcpy(Y,“世界你好”); } 错误:冲突的类型'Y' 错误:'Y'的previous声明在这里 警告:初始化将指针整数,未作投 错误:初始元素不是常数 警告:数据定义没有类型或存储类 警告:传 ..
发布时间:2016-08-21 20:00:47 C/C++

为什么呢,或者,你需要在C动态分配内存?

动态内存分配在C编程一个非常重要的课题。不过,我一直无法找到这是什么使我们能够做什么,或者为什么它需要很好的解释。 我们不能只声明变量和结构,并从来没有使用malloc()? 作为一个方面说明,之间有什么区别: ptr_one =(INT *)malloc的(的sizeof(INT)); 和为int * ptr_one =的malloc(sizeof的(INT)); 解决方案 ..
发布时间:2016-08-19 16:19:09 C/C++

realloc的正确使用()

从人的realloc:本realloc的()函数返回一个指向新分配的内存,它专为适应任何类型的变量并对齐如果请求失败可能是不同PTR,或NULL 因此​​,在这个code片断: PTR =(INT *)malloc的(的sizeof(INT)); ptr1的=(INT *)的realloc(PTR,计数*的sizeof(INT)); 如果(ptr1的== NULL)//重新分配指针ptr1的 ..
发布时间:2016-08-19 13:52:25 C/C++

与收缩的realloc

我遇到这一小块code的这个问题,&安培;想知道, 可以在的realloc()功能不断移动内存块到另一个位置,当内存空间指向的收缩? 为int * A =的malloc(10 * sizeof的(INT)); 为int * B = realloc的(A,5 *的sizeof(INT)); 如果可能的话,在什么条件下,我能想到 B 来在来自不同地址的? 解决方案 这是可能的的reall ..
发布时间:2016-08-19 13:40:48 C/C++

使用函数内的realloc

我的道歉,我知道很多相关的问题已经被问,所以我会保持它非常简单。 尽管几年编程我找不到调整和修改函数中的数组(或几个)正确的语法。例如,说我希望有一个函数来填充与一组“n”的数字,其中“n”是该阵列中定义的阵列 INT主(INT ARGC,CHAR *的argv []){ 浮动*数据= NULL INT N = myfunction的(数据); 对于(i = 0; I ..
发布时间:2016-08-19 00:42:32 C/C++

如何安排收集周期自定义标记 - 清除收集器?

我已经写了后记虚拟机一个简单的垃圾收集器,和我有困难,设计一个体面的一套时候做一个集合(当空闲列表太短?)规则以及何时分配新空间(当有使用大量的空间吗?)。 我已经写自下而上,到目前为止,但这个问题涉及到顶层设计。所以,我觉得我站不住脚。 所有对象进行管理和访问只能通过运营商的功能,所以这是一个收藏家在 C,不是为的温度。 主要分配函数被调用 gballoc : 无符号gballoc(MF ..
发布时间:2016-08-19 00:09:34 C/C++

你会realloc的做,如果有是内存没有连续的空间?

的realloc 用于动态重新分配内存。 假设我已经分配使用的malloc 函数7个字节,现在我想将其扩展到30字节。 将在后台发生什么,如果没有连续的(continously在单排)在内存中的30个字节的空间吗? 是否有任何错误或将内存部分分配? 解决方案 的realloc 的工作场景大致是这样的背后: 如果有当前块后面足够的自由空间,以满足请求,扩展当前块和返回一个指向该块 ..
发布时间:2016-08-18 22:41:11 C/C++

如何使用的结构?

好吧首先我会解释我的任务。对于这个任务,我不得不使用它我有没有问题,动态内存分配。什么我有是搞清楚工作我分配正确的方式有问题。对于我的任务,我需要建立一个程序,提示用户输入他们有多少学生然后问以下信息;学号,生日和电话号码。我需要使用一个循环来提示用户输入所有学生的信息。我需要创建一个循环,就能把所有的学生ID扫描和使用他们的生日发现的最古老的学生(循环必须通过3个以上的学生能够扫描)。 下面是 ..
发布时间:2016-08-18 13:44:10 C/C++

如何读取C字无限

如何在不指定大小读无限次字符转换成一个的char * 变量? 举例来说,假设我想读的员工也可以采取多行的地址。 解决方案 您必须通过“猜测”您所期望的规模开始,然后分配的缓冲区大使用的malloc 。如果原来是太小了,你可以使用的realloc 来调整缓冲区是有点大。示例code: 的char *缓冲区; 为size_t num_read; 为size_t BUFFER_SIZE;BU ..
发布时间:2016-08-18 13:28:32 C/C++

动态分配/ 2D&放释放;三维阵列

我了解的算法来分配/释放动态二维数组,但我不是太肯定同为3D阵列。结果 利用这些知识,有点对称性,我想出了以下code。结果 (我有一个很难的3D可视化编码过程中)。 请上的正确性,如果任何意见和建议任何更好的选择(效率明智或直觉)。结果 另外,我觉得这两个二维和三维数组可以像正常一样arr2D [2] [3]和结果静态数组访问 arr3D [2] [3] [2]。对? code为2D ..
发布时间:2016-08-17 22:43:52 C/C++

简单的C实施跟踪内存的malloc /免费的吗?

编程语言:C 平台:ARM 编译:ADS 1.2 我需要跟踪的简单 melloc /免费调用我的项目。我只需要获得当程序已分配其所有资源多少堆内存需要非常基本的想法。因此,我提供了一个包装的的malloc /免费来电。在这些包装我需要增加时,的malloc 被称为当前内存容量和递减时,它被称为免费。在的malloc 情况下是直线前进,因为我有大小从呼叫者分配。我想知道如何应对免费情况下我需要 ..
发布时间:2016-08-17 22:24:20 C/C++

静态内存分配和动态内存分配的区别

我想知道什么是静态内存分配和动态内存分配的区别? 您可以与任何实际的例子解释一下吗? 解决方案 有三种类型的配置 - 静态的,自动的,动态 的静态分配的意思,该程序启动时为你的变量分配内存。在创建程序时的尺寸是固定的。它适用于全局变量,文件作用域变量和变量与静态在函数内部定义的合格。 的自动分配内存的出现对内部函数定义(非静态)变量,通常存储在的栈的(尽管C标准并不要求一个堆栈时)。 ..