重~难~易错模型积累

  1. string 表示可变长的字符序列

  2. vector 存放的是某种给定类型对象的可变长序列

  3. malloc()分配的内存空间在堆上,由操作系统进行管理,必须由程序员主动释放,否则存在内存溢出的可能
    示例代码:

char *p = NULL;
p = (char *)malloc(100);
if(p != NULL)
{
        free(p);
}

PS1:如果中途对malloc的指针进行了类似 p++ 的操作,则无法 free(),遇此情况解决办法是定义另一个临时指针变量,接手后进行相关操作
PS2:一般定义临时辅助变量将通过指针传入函数的变量接手,再进行其他操作

  1. C语言既可以在栈上分配内存,也可以在堆上分配内存

  2. char *p = "abcde";中, p是变量,而 “abcde”储存在全局区。p 储存的是 “abcde”所在的地址,即:

指针指向谁,就把谁的地址赋给指针

  1. 一定要注意函数的返回值问题
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • (JG-2014-08-20)(前半部分经过网上多篇文章对比整理)(后半部分根据ExceptionalCpp、C+...
    JasonGao阅读 10,904评论 2 23
  • C语言中内存分配 在任何程序设计环境及语言中,内存管理都十分重要。在目前的计算机系统或嵌入式系统中,内存资源仍然是...
    一生信仰阅读 4,922评论 0 2
  • iOS面试小贴士 ———————————————回答好下面的足够了------------------------...
    不言不爱阅读 6,220评论 0 7
  • __block和__weak修饰符的区别其实是挺明显的:1.__block不管是ARC还是MRC模式下都可以使用,...
    LZM轮回阅读 8,731评论 0 6
  • 北京梦之翼传统文化家塾 学子今日成长的力量 : 1,李昕美同学今天能够大声的表达自己的想法,令我非常惊喜,她大声的...
    梦之翼教育的简书阅读 1,124评论 0 0