刘小汶

路漫漫其修远兮,吾将上下而求索。

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理
  1. 对函数的作用; 函数有分类型;外部函数:和内部函数;
  2. 外部函数:可以被本文件和其他文件访问;
  3. 内部函数:只能被本文件访问;其他文件不能访问;
  4. 默认情况下,所有函数都是外部函数;
  5. extern是外部的意思;
  6. 完整的定义外部函数需要加上extern,因为默认情况下就是外部函数,可以省略extern;
  7. 完整的声明一个外部函数:extern void test();完整的定义外部函数也是在函数名类型前加上extern;
  8. extern的作用定义外部函数;声明外部函数;
  9. 定义一个内部函数;在函数类型前加上static;
  10. 如static void test(){printf(“1234");}
  11. 内部函数不能直接调用,但是可以间接调用;
  12. static void test2();需要先声明内部函数;
  13. void test(){test2();printf(“12312");}
  14. static test2(){printf(2323“");}
  15. 通过上面代码别人就可以间接调用test2();
  16. 整个项目中不允许有同名的外部函数;
  17. .
  18. 上面介绍的extern和static对函数的作用;下面是介绍对变量的作用
  19. 全局变量分两种:内部变量和外部变量;
  20. 内部变量只能被本文件访问,不能被其他文件访问;
  21. 外部变量:定义的变量能被本文件和其他文件访问;
  22. 默认情况下;所有的全局变量都是外部变量;如果大家都有相同的变量,证明他们占用的存储地址是相同的;
  23. 默认情况下,全局变量都是0;不同文件中的同名外部变量,都代表着同一个变量;
  24. static int b;定义内部变量;
  25. extern对变量的作用就是声明外部变量;
  26. 如果变量放在后面,但你在前面需要调用;需要在前面声明变量:用的语句是:extern int b;
  27. .
  28. static和extern对局部变量的作用;
  29. 当使用static定义局部变量的时候,开始分配了存储空间,当结束代码不会马上释放存储空间;会等到整个程序结束后,才会释放内存;会延长生命周期;
  30. 延长聚聚变量的生命周期:程序结束的时候,局部变量才会被销毁;并名优改变局部变量的作用域;
  31. void test(){static int b = 0;b++;print(“%d”,b);}
  32. 使用内部局部变量可以是所有的test函数都共享着一个变量b;
  33. static double pi = 3.14;表示pi调用的每一次的值都一样,不需要重复分配存储空间;
  34. static修饰局部变量的使用场合;a如果某个函数的调用频率特别高;b这个函数内部的某个变量值是固定不变的;
posted on 2016-04-08 12:51  williamliuwen  阅读(264)  评论(0编辑  收藏  举报