变量先声明

    编译器禁止使用未经初始化的变量,因为这会产生未定义行为(undefined behavior)。