static静态局部变量的使用技巧

static静态局部变量的使用技巧

图1

static静态局部变量的使用技巧

图2

图1和图2的中uint32_t是定义一个32位的无符号整型变量的自定义类型。

上面两张图其实是局部变量和全局变量的区别。其中,图1就是个错误的用法,因为msTicks永远也不会涨起来。要想让msTicks涨起来,必须要把msTicks定义成全局变量才可以。

不过,这里还有一种妙用,就是利用static关键字,如下图所示:

static静态局部变量的使用技巧

这里虽然把msTicks定义成了局部变量,但是用了static关键字,结果是msTicks也会涨起来。

什么原理?

这里用static把msTicks定义成了一个静态局部变量。静态局部变量和普通局部变量一样,只能在定义它的函数里面使用它。普通局部变量在程序退出函数以后,就会释放,静态局部变量则不会被释放,它在整个生命周期都存在。下次读到是上次修改后的值。

  • UC3846控制芯片工作原理控制图 逆变焊机原理与用途
  • 数字万用表电阻档测试二极管正反向没有阻值(使用万用表测量二极管的正向电阻,为什么各档)
  • 学单片机需要学数电模电吗(学单片机要先学数电模电吗)
  • 电工怎么选择适合自己用的万用表(电工初学者买什么样的万用表好)
  • 单片机需要同时运行多个任务怎么办(单片机怎么同时执行多个任务)
  • 电机保护的方案取决于负载的机械特性
  • 绝缘电阻表正负搭接不复零位是怎么回事
  • 短路怎么用万用表查