我无法释放我使用malloc分配的内存 . 程序运行正常,直到它应该使用free释放内存的部分 . 程序冻结了 . 所以我想知道问题是什么,因为我只是在学习C.语法上代码似乎是正确的,所以我需要删除该位置的所有东西,然后从该位置或其他地方释放内存?

这是代码 .

// Program to accept and print out five strings

#include

#include

#include

#define NOOFSTRINGS 5

#define BUFFSIZE 255

int main()

{

char buffer[BUFFSIZE];//buffer to temporarily store strings input by user

char *arrayOfStrngs[NOOFSTRINGS];

int i;

for(i=0; i

{

printf("Enter string %d:\n",(i+1));

arrayOfStrngs[i]=(char*)malloc(strlen(gets(buffer)+1));//calculates string length and allocates appropriate memory

if( arrayOfStrngs[i] != NULL)//checking if memory allocation was successful

{

strcpy(arrayOfStrngs[i], buffer);//copies input string srom buffer to a storage loacation

}

else//prints error message and exits

{

printf("Debug: Dynamic memory allocation failed");

exit (EXIT_FAILURE);

}

}

printf("\nHere are the strings you typed in:\n");

//outputting all the strings input by the user

for(i=0; i

{

puts(arrayOfStrngs[i]);

printf("\n");

}

//Freeing up allocated memory

for(i=0; i

{

free(arrayOfStrngs[i]);

if(arrayOfStrngs[i] != NULL)

{

printf("Debug: Memory deallocation failed");

exit(EXIT_FAILURE);

}

}

return 0;

}

Cfree5可以JAVA_无法使用free()释放内存相关推荐

  1. c语言中free函数释放内存后,会怎么样?

    比如有一个 int* p 的指针,申请内存: p = (int*)malloc(sizeof(int)); 你就可以对 p 做这样的操作:*p = 54; 使用 free(p);那么就是切断了 p 对 ...

  2. JNI内存方面说明以及相关类型手动释放内存

    JNI内存方面说明以及相关类型手动释放内存 一.Java内存 二.JNI内存和引用 三.Local Reference 四.Global Reference 五.Weak Global Referen ...

  3. 频繁分配释放内存导致的性能问题的分析--brk和mmap的实现

    现象 1 压力测试过程中,发现被测对象性能不够理想,具体表现为:  进程的系统态CPU消耗20,用户态CPU消耗10,系统idle大约70  2 用ps -o majflt,minflt -C pr ...

  4. linux手动释放内存的方法

    Linux手动释放缓存的方法 Linux释放内存的命令: sync echo 1 > /proc/sys/vm/drop_caches drop_caches的值可以是0-3之间的数字,代表不同 ...

  5. 释放内存触发断点及数组、指针的NULL初始化

    Visual Studio调试时,出现"触发一个断点"内存释放出现异常 数组和对应指针的NULL初始化 数组使用之前要先对其初始化 char Outi[4] = { NULL }; ...

  6. 【百度分享】频繁分配释放内存导致的性能问题的分析

    现象1 压力测试过程中,发现被测对象性能不够理想,具体表现为:  进程的系统态CPU消耗20,用户态CPU消耗10,系统idle大约70  2 用ps -o majflt,minflt -C prog ...

  7. linux释放内存命令

    1.首先查看linux内存使用 #free -m 2.把内存数据同步到硬盘 #sync 3.修改 /proc/sys/vm/drop_caches文件 #echo 3 > /proc/sys/v ...

  8. 如何为linux释放内存和缓存

    如何为linux释放内存和缓存_华陌飞尘_新浪博客 如何为linux释放内存和缓存     (2011-10-20 10:49:01)        标签:     linux     swap    ...

  9. C++ 之new和delete释放内存

    C++ -释放内存(new和delete) C++动态分配和释放内存 @c.biancheng.net/view/206.html 在C语言中,动态分配内存用 malloc() 函数,释放内存用 fr ...

  10. Linux下如何释放内存

    在Linux系统下,我们一般不需要去释放内存,因为系统已经将内存管理的很好.但是凡事也有例外,有的时候内存会被缓存占用掉,导致系统使用SWAP空间影响性能,此时就需要执行释放内存(清理缓存)的操作了. ...

最新文章

  1. 使用HttpClient实现一个简单爬虫,抓取煎蛋妹子图
  2. 构想:中文文本标注工具(内附多个开源文本标注工具)
  3. Google图片搜索的原理
  4. iPhone 13或将配备更大容量电池 售价与iPhone 12基本相当
  5. 【切图】门户网首页模板一 (类似CSDN)
  6. js判断是否为ie浏览器
  7. js中做数字运算时出现的异常,期望值比实际值小太多太多
  8. Amoeba新版本MYSQL读写分离配置
  9. BZOJ4598 [Sdoi2016]模式字符串 【点分治 + hash】
  10. 2021年最完整的人工智能入门指南
  11. 公转对讲融合项目如何实现对接?
  12. 微信小程序地图图标controltap
  13. 一分钟搞懂app热更新
  14. 草履虫纳米机器人_纳米机器人的研究进展如何?
  15. 去除浏览器自动填充密码功能
  16. eclipse的放大字体
  17. 关于C++的数据模型:LP32、ILP32、LLP64、LP64
  18. python解释型语言的说明
  19. Nokia手机命名方式
  20. 微信公众号中实现实时语音转写

热门文章

  1. 电子技术基础(三)__电路分析基础__电感元件
  2. wps怎么打包图片_wps如何压缩图片
  3. (五)js数组方法二
  4. win10u盘被写保护怎么解除_u盘写保护怎么去掉?Win10移除u盘写保护的操作步骤...
  5. 程序员3年工资从7千到2万2,晒出跳槽经历!网友:厉害
  6. 程序员培训去哪里?哪里学习程序员
  7. 期刊论文发表的字数是怎么计算的
  8. SMPL 人体模型简要
  9. 除了技校 哪里还可以学计算机技术,我打算去读技校,技校毕业了去工作有钱了,还可以读技校吗?(我想多学一门技术)...
  10. android 7.0 壁纸设置,android7.0怎么换锁屏壁纸