EDA365电子工程师网
标题:
static的作用?麻烦高手帮帮看看啊
[打印本页]
作者:
zhuxiaoxing
时间:
2013-5-13 10:25
标题:
static的作用?麻烦高手帮帮看看啊
下面两个子程序中有什么区别呢?
$ G5 c$ o8 d9 ?
void Display(unsigned char FirstBit,unsigned char Num)
3 M& x: A- S7 y: ^9 ?/ N
{
. q' S1 D0 o, j" T/ j7 Z! J8 `6 J: s
unsigned char i;
2 n2 e/ w- E3 _+ A9 a
9 Z0 Z x' {* R, d2 n
for(i=0;i<Num;i++)
8 w, c t" |& {& P. U
{
' o: T0 u3 [. \0 ^) K
DataPort=0; //清空数据,防止有交替重影
" m$ N( M0 o: d9 k5 z
LATCH1=1; //段锁存
2 b+ P# t/ d/ D1 |4 U, T% H
LATCH1=0;
/ E# i6 U: S, a/ I
5 s* _% H2 ]$ h6 z) Q) {
DataPort=dofly_WeiMa[i+FirstBit]; //取位码
: l0 l5 g+ j' i! F$ I: M$ z: h5 X0 Z
LATCH2=1; //位锁存
" L. h- o+ A8 d H. j0 l
LATCH2=0;
% a' V1 ~$ `! T4 Y! d2 d
' c" G5 S6 B9 [- i. z9 z+ b5 Q
DataPort=TempData[i]; //取显示数据,段码
& R) E0 d; H* _( _! O: q o
LATCH1=1; //段锁存
8 L R' A0 a( c$ q0 Z& |
LATCH1=0;
" s' F* D* D' H# f+ G1 t! V
3 o! f; Q/ u& P* z* t
Delay(200); // 扫描间隙延时,时间太长会闪烁,
7 b& E1 O# X" H" h1 \9 G1 u
//太短会造成重影
. |+ e8 v* n0 c8 H) [! d& A
: `) f# H( F3 ?: m+ T/ `: s' c
}
0 b* Q# b- q: |( x) b
4 {3 ?* m0 O! K1 R6 p
}
; t5 U8 ^& R7 r; b# a4 V: |/ ?
void Display(unsigned char FirstBit,unsigned char Num)
2 g' x; [( a2 T8 S8 J
{
+ X; M. O1 O3 k
static unsigned char i;
. V& h: M, G- u) z1 }+ h
; d ?/ p/ i8 ~. T8 X5 t% ^
DataPort=0; //清空数据,防止有交替重影
& |" m# e9 i& {" t/ n& w
dula=1; //段锁存
& ?; E6 n& I# |' o- W
dula=0;
5 X- M) l- t/ }
+ c2 F* a! w2 ^- e( t
DataPort=dofly_WeiMa[i+FirstBit]; //取位码
y- \) U1 j- U" M) a9 N
wela=1; //位锁存
. n1 g0 q" Q o
wela=0;
- U' b. V9 v K3 l# t7 e! d' `
- F# z9 P7 L3 g( P
DataPort=dofly_DuanMa[disp[i]]; //取显示数据,段码
5 v9 D: f0 u9 b) k% c
dula=1; //段锁存
+ X# e; ~9 x2 M' o- S
dula=0;
( L8 s, Z0 y$ Q- l. q3 _
i++;
. U) W5 x3 m# _' E# G( x' j0 n
if(i==Num)
% ^" r& I5 J$ ?5 R% j$ C
i=0;
% e& ?8 g( z' o
}
作者:
开心的萍果
时间:
2013-5-15 11:22
没人气啊,自己百度下static就有答案了
作者:
whq001
时间:
2013-7-10 16:25
就是一个静态变量,只是这个函数使用,你也可以定义个全局static 整个C文件都用 别的地方不能extern
作者:
天才小痴
时间:
2013-11-15 01:53
差别在于static unsigned char i 的数据会保存,i 这个变量会被分配固定的内存地址,unsigned char i是不被分配固定的地址的,只有调到时才会分配地址,用后就被清空掉了!
欢迎光临 EDA365电子工程师网 (http://bbs.elecnest.cn/)
Powered by Discuz! X3.2