美文网首页
C语言中初始化内存的方法

C语言中初始化内存的方法

作者: 蔡俊宇 | 来源:发表于2017-10-12 17:04 被阅读260次

不知道大家在用vs的时候,有没有试过出现“烫烫烫烫...”,出现的主要原因是这个软件在初始化内存的时候默认对于未初始化的栈内存全部填成 0xcc,对应于汉字字符串看就是 烫烫烫烫……,对于未初始化的堆(new)内存全部填成 0xcd,对应于汉字字符串看就是 屯屯屯屯……。而一般使用内存前要重置内存中的内容,一般我们使用memset函数

char buf[1024];
//在使用这个地址的时候我们需要清空内存的信息,一般有两种办法,一种是运行期间完成,一种是编译期间完成:
  //运行期间
 memset(buf, 0, sizeof(buf));
//在编译期间就完成了
 char buf[1024] = {0};

推荐使用 = {0} 这种形式,效率较高。
在最开始学习数据结构和算法的时候,因为C语言基础不好,又没有回顾,在写数据结构的时候经常遇到数组不为空的状况,后来重新补充这部分内容,才发现原来是这么低级的错误。

相关文章

  • C语言中初始化内存的方法

    不知道大家在用vs的时候,有没有试过出现“烫烫烫烫...”,出现的主要原因是这个软件在初始化内存的时候默认对于未初...

  • 5.23课程小结

    今天学习了c语言中的指针。指针是c语言中,非常重要的知识点。通过今天的学习。明确了指针的使用方法,初始化方法等。按...

  • 《深入理解计算机系统》——Ch2-MemoryⅡ

    这一章继续学习内存。如何把C语言的变量存到内存,C语言中的指针和数组在内存的存取方式。 1 C语言中的&和* 第一...

  • C++在new一个对象时有没有进行内存初始化

    在C语言中,使用malloc开辟堆内存时,都不会对内存进行初始化,如果直接使用,可能会获取到奇奇怪怪的值。一般我们...

  • C++ new 和 delete 运算符

    在 C 语言中,动态分配内存用 malloc () 函数,释放内存用 free () 函数。如下所示: 在 C++...

  • 慕课网-Linux C语言指针与内存-学习笔记

    Linux C语言指针与内存 工具与原理 指针 数组 字符串 堆内存与栈内存 gdb内存调试工具。 C语言中指针的...

  • 2018-12-02

    go new和make区别 new用来分配内存,但与其他语言中的同名函数不同,它不会初始化内存,只会讲内存置零;也...

  • ARC

    ARC 概述 有关Objective-C内存管理的方法,实际上不包括在该语言中,而是包含在Cocoa框架中用于OS...

  • Object-c --- init方法的重写和自定义

    1、init OC中的init方法的作用是在对象实例化后对其初始化,在其它编程语言中(如Java、C++)都有构造...

  • C语言中内存分配

    C语言中内存分配 在任何程序设计环境及语言中,内存管理都十分重要。在目前的计算机系统或嵌入式系统中,内存资源仍然是...

网友评论

      本文标题:C语言中初始化内存的方法

      本文链接:https://www.haomeiwen.com/subject/tdjoyxtx.html