我对C语言中extern关键字的使用感到困惑。当它与变量一起使用时,它表示变量的声明。我在main()函数外部声明变量tmp,并在main()函数的一个独立块中定义它,但是当我在随后的块中打印该值时,我得到了一个"UNRESOLVED EXTERNAL LINK"的错误。请给我详细的解释。
#include <stdio.h>
extern int tmp ;
int main()
{
{
int tmp = 50;
}
{
printf("%d",tmp);
}
return 0;
}