C での extern キーワードの使用について混乱しています。変数で使用すると、変数の宣言を意味します。main() 関数の外側で変数 tmp を宣言し、main の別のブロックで定義しますが、後続のブロックで値を出力すると、「UNRESOLVED EXTERNAL LINK」というエラーが発生しました。困っています 詳しい説明をお願いします。
#include <stdio.h>
extern int tmp ;
int main()
{
{
int tmp = 50;
}
{
printf("%d",tmp);
}
return 0;
}