54 lines
1.0 KiB
C
54 lines
1.0 KiB
C
#include <stdio.h>
|
|
#include <stdlib.h>
|
|
#include <time.h>
|
|
#include <math.h>
|
|
#include <stdbool.h>
|
|
#include <string.h>
|
|
#ifdef _WIN32
|
|
#include <windows.h>
|
|
#include <direct.h>
|
|
#endif
|
|
|
|
// !全局变量
|
|
/*
|
|
1.定义在函数外面的变量是全局变量
|
|
2.全局变量具有全局的生存期和作用域
|
|
它们与任何函数都无关
|
|
在任何函数内部都可以使用它们
|
|
3.全局变量初始化
|
|
没有做初始化的全局变量会得到0值
|
|
指针会得到NULL值
|
|
只能用编译时刻已知的值来初始化全局变量
|
|
它们的初始化发生在main函数之前
|
|
4.被隐藏的全局变量
|
|
如果函数内部存在与全局变量同名的变量,则全局变量被隐藏
|
|
*/
|
|
|
|
int f(void);
|
|
|
|
int gALL = 12;
|
|
|
|
int main()
|
|
{
|
|
// 设置控制台编码为UTF-8
|
|
#ifdef _WIN32
|
|
system("chcp 65001 > nul"); // 设置控制台编码为UTF-8
|
|
SetConsoleOutputCP(65001); // 设置控制台输出编码
|
|
SetConsoleCP(65001); // 设置控制台输入编码
|
|
#endif
|
|
|
|
printf("in %s gALL = %d\n", __func__, gALL);
|
|
f();
|
|
printf("in %s gALL = %d\n", __func__, gALL);
|
|
|
|
return 0;
|
|
}
|
|
|
|
int f(void)
|
|
{
|
|
printf("in %s gALL = %d\n", __func__, gALL);
|
|
gALL+=2;
|
|
printf("in %s gALL = %d\n", __func__, gALL);
|
|
|
|
return 0;
|
|
} |