programing

c 파일 간에 글로벌 변수를 공유하려면 어떻게 해야 합니까?

coolbiz 2023. 1. 17. 21:45
반응형

c 파일 간에 글로벌 변수를 공유하려면 어떻게 해야 합니까?

에서 글로벌 변수를 정의하면.c파일, 다른 변수에서 동일한 변수를 사용하는 방법.c파일링?

file1.c:

#include<stdio.h>

int i=10;

int main()
{
    printf("%d",i);
    return 0;
}

file2.c:

#include<stdio.h>

int main()
{
    //some data regarding i
    printf("%d",i);
    return 0;
}

어떻게 두 번째 파일을file2.c가치를 이용하다i첫 번째 파일부터file1.c?

파일 1:

int x = 50;

파일 2:

extern int x;

printf("%d", x);

를 사용합니다.extern다른 쪽 변수를 선언하려면 키워드를 지정합니다..c파일. 예:

extern int counter;

는, 실제의 스토리지가 다른 파일에 있는 것을 의미합니다.변수와 함수 프로토타입 모두에 사용할 수 있습니다.

file2.c에서 file1.c의 글로벌 변수 i를 사용하는 경우 다음 사항을 기억해야 합니다.

  1. file2.c에는 주요 함수가 없어야 합니다.
  2. 이제 글로벌 변수 i는 다음 두 가지 방법으로 파일2.c와 공유할 수 있습니다.c와 공유할 수 있습니다.
    a) file2.c.e.extern interi에 extern 키워드를 지정하여 선언한다.
    b) 변수 i를 헤더 파일에 정의하고 해당 헤더 파일을 파일2.c에 포함시킵니다.

다른 .c 파일에서 extern 키워드를 사용합니다.

두 번째에.c파일 사용extern같은 변수 이름을 가진 키워드입니다.

file1.c file2.c에서와 같은 작업을 수행합니다.

#include <stdio.h> 

extern int i;  /*This declare that i is an int variable which is defined in some other file*/

int main(void)
{
/* your code*/

main() 아래의 file2.c에서 int i를 사용하는 경우 i는 file1.c에서 정의된 것과 다른 로컬 자동변수로 취급됩니다.

사용.extern <variable type> <variable name>헤더 또는 다른 C 파일에 저장해야 합니다.

언급URL : https://stackoverflow.com/questions/6792930/how-do-i-share-a-global-variable-between-c-files

반응형