Day 2
-
register寄存器类型的一个数据不能打印出地址查看或者使用 static 型的变量会被初始为0或 null static常修饰变量 使变量限制在当前范围内 可以一定程度上避免全局变量的重复定义
-
static 修饰函数时 函数也会被局限在当前的范围里 (当前的.c中)即防止当前函数对外拓展 这就意味着 不同的.c中不能直接互相调用 使用static修饰函数
但是可以——
通过在 一个.c中用非static修饰的函数作为中转 这个非static修饰的函数在同一个.c中调用static修饰的函数 而外部的 .c 可以调用这个非static修饰的函数 进而达到使用不同文本中的 static修饰的函数 这既保证了函数在不同文本中的流转性 也保证了安全性 -
关于全局变量的一个缺陷
#include <stdio.h>
#include <stdlib.h>
int i=0;
void print_star(void)
{
for( i=0;i<5;i++ )
printf(“*”);
printf(“/n”);
}
int main()
{
for( i=0; i<5 ;i++ )
print_star();
exit(0);
}
这里就会体现出全局变量的副作用