局部静态变量只在第一次进入函数时初始化一次,之后的函数调用将保留上一次的值。
#include <stdio.h> void print() { static int i = 1; printf("%d\n", i); i++; } int main(int argc, char const *argv[]) { print(); print(); print(); return 0; }