单片机程序:函数声明和变量定义顺序问题,求解!

这是源自b站(江科大自化协)led点阵屏中的代码
为什么44行和45行语句顺序互换,显示三个变量未定义,而此时就没有问题。(该声明函数中未含以上三个变量)

img

C99支持在可执行语句后面定义变量,但之前的标准不允许。MDK可以选择是否用C99标准,但是C51只支持C89

你这个开发环境的C语言代码要求变量定义必须在函数开始就定义。不能在代码中间定义变量。

有些C 语言的开发工具,变量的声明要放在函数的最开头,
你将变量的声明放在一个函数的调用后面这是不行的。