四、跨函数使用内存讲解及其示例


 


  1. #include <stdio.h>

  2. #include <malloc.h>

  3. struct Student

  4. {

  5. int age;

  6. int sid;

  7. };

  8. struct Student * CreateStudent();

  9. void ShowStudent(struct Student *);

  10. int main(void)

  11. {

  12. struct Student * ps;

  13. ps = CreateStudent();

  14. ShowStudent(ps);

  15. return 0;

  16. }

  17. //因为返回的是指针p,它的类型为struct Student

    *,所以方法前面要加这个

  18. struct Student * CreateStudent(void)

  19. {

  20. struct Student * p = (struct Student *)malloc(sizeof(struct

    Student));

  21. //给指针p分配了struct Student需要占用的字节大小

  22. //相当于new了一个p

  23. p->age = 99;

  24. p->sid = 88;

  25. return p;

  26. }

  27. void ShowStudent(struct Student * pst)

  28. {

  29. printf(“%d %d”, pst->age, pst->sid);

  30. }


本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!