GetMemory的基本用法.pdfVIP

  • 7
  • 0
  • 约 4页
  • 2015-08-03 发布于重庆
  • 举报
GetMemory 函数的几种经典考法 //NO.1:程序首先申请一个char类型的指针str,并把str指向NULL(即str 里存的是NULL的地址,*str为NULL中的值为0),调用函数的过程中做了如 下动作:1申请一个char 类型的指针p,2把str的内容copy到了p里(这是 参数传递过程中系统所做的),3为p指针申请了100个空间,4返回Test函数.最 后程序把字符串hello world拷贝到str指向的内存空间里.到这里错误出现了! str的空间始终为NULL而并没有实际的空间.深刻理解函数调用的第2步,将 不难发现问题所在! void GetMemory(char *p) { p = (char*)malloc(100); } void Test(void) { char *str = NULL; GetMemory(str); strcpy(str, hello world); printf(str); } //请问运行Test函数后会是什么样的结果? //NO.2:程序首先申请一个char类型的指针str,并把str指向NULL.调用函数 的过程中做了如下动作:1申请一

文档评论(0)

1亿VIP精品文档

相关文档