Chinaunix首页 | 论坛 | 博客
  • 博客访问: 344902
  • 博文数量: 92
  • 博客积分: 2500
  • 博客等级: 少校
  • 技术积分: 960
  • 用 户 组: 普通用户
  • 注册时间: 2009-08-21 19:38
文章分类

全部博文(92)

文章存档

2010年(71)

2009年(21)

我的朋友

分类: 嵌入式

2010-06-08 11:23:06

static 关键字

当函数中的局部变量的值在函数调用结束后不消失而保留原值时,该变量称为静态局部变量。用关键字static进行声明。

对静态局部变量是在编译时赋初值的,即只赋初值一次,在程序运行时它已有初值。以后每次调用函数时不再重新赋初值而只是保留上次函数调用结束时的值。

8.18 输出1到5的阶乘值

#include

void  main()

int  facint n);

      int i;

      for(i=1;i<=5;i++)

      printf(″%d!=%d\n″,,fac(i));

Int facint n)

static  int f=1;

      f=f*n;

      return(f);

 

static声明外部变量

在程序设计中,某些外部变量只限于被本文件引用,而不能被其他文件引用。这时可以在定义外部变量时加一个staitic声明。

例如:

file1.c                           file2.c

static int A;                   extern int A;

void main ( )                  void fun (int n)

{                                      {…

                                    A=A*n;

}

 

static声明内部函数

如果一个函数只能被本文件中其他函数所调用,它称为内部函数。在定义内部函数时,在函数名和函数类型的前面加static。即

static 类型标识符 函数名(形参表)

例如:   static int fun ( int a , int b )

 

 

阅读(1053) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~