static用于声明静态变量

  • 全局静态变量
  • 局部静态变量:存放在静态变量区
  • 修饰静态函数:函数作用域仅限于本文件

静态函数,在程序员协同工作时,可以防止变量、函数重名


有符号和无符号混合三目运算问题

void fun(void)
{
    unsigned int a = 6;
    int b = -20;
    int c;
    (a+b > 6) ? (c=1) : (c=0);
}

当表达式中存在有符号类型和无符号类型时,所有的操作数都自动转换为无符号类型;因此-20变成了一个非常大的正整数。

表达式的结果为c = 1