我知道C中的全局变量有时有extern关键字。什么是extern变量?申报是什么样的?它的范围是什么?这与跨源文件共享变量有关,但这究竟是如何工作的呢?我在哪里使用extern?