在c语言中,变量通常要求局部变量在函数最开始声明,否则会被编译器报错,这种变量的声明周期只限于在函数体内。像你提出的这种,可以无视刚才的要求,在函数内部任意位置声明变量,他的声明周期就是for循环内部,每次进入都是新的变量,占用栈上空间。我有一个小窍门,方便记忆,{}内部的变量,声明周期只在当前{}内。比如:{ int a; int b;}可以这样声明变量,甚至不需要任何循环体,或者if,这些变量一旦离开当前{},就被销毁
你这个是c++