C Неопределенное задание

У меня возникла проблема со следующими кодами, особенно в header.c, где я не могу получить доступ к переменной extern int x в header.h... Почему? Является ли внешняя переменная в.h не глобальной? Как я могу использовать это в других файлах?

===header.h===

#ifndef HDR_H
#define HDR_H

extern int x;
void function();

#endif

===header.c===

#include <stdio.h>
#include "header.h"

void function()
{
    printf("%d", x); //****undefined reference to x, why?****
}

===sample.c===

int main()
{
    int x = 1;
    function();
    printf("\n%d", x);
    return 0;
}
5
задан Analyn 8 August 2012 в 09:04
поделиться