c语言知识

1.extern和static

  extern可以用来声明一个外部函数或外部变量, 其他文件可以访问这个函数或变量;

  static可以用来声明一个内部函数或内部变量(全局变量), 其他文件可以不访问这个函数或变量;

  static修饰局部变量只是改变了这个变量的生命周期,但是没有改变其作用域;

  static修饰全局变量限制了变量的作用域.

2.enum枚举类型

  enum 其实是一个整型

  enum season {spring, summer, autmn, winter};

  enum season s = spring; //s=0;

  s = winter;  //s=3;

3.typedef与指向函数的指针

  int sum(int a, int b)

  {

    return a + b;

  }

  int  (*p)(int, int);  //定义一个指向函数的指针,也可以 int (*p)(int, int) = sum;

  p = sum;  //指向sum函数

  (*p)(4, 5);  //象这样调用, 结果为9

  这样做很麻烦, 我们可以用typedef

  typedef int (*SumPoint)(int, int);  //给指向函数的指针定义一个别名SumPoint

  SumPoint p = sum;  //可以用这个别名来声明一个指向函数的指针变量

  (*p)(5, 6);  //结果为11

 

 

posted on 2014-06-09 12:55  赵飞宇  阅读(125)  评论(0编辑  收藏  举报

导航