嗨,我只是想知道如何在.c文件之間共享全局變量。
我嘗試添加後續代碼,但仍然出現錯誤。在.c文件之間共享全局變量
test1.c文件
#include <stdio.h>
int max = 50;
int main()
{
printf("max %d", max); // result max 50
}
pass.h
extern int max;
passed.c
#include <stdio.h>
#include "pass.h"
max;
int main()
{
printf("pass %d \n", max);
return 0;
}
但是,當我編譯passed.c我得到遵循錯誤
Undefined symbols for architecture x86_64:
"_max", referenced from:
_main in passed-iOMugx.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
任何人都可以幫忙嗎?非常感謝。
您是否真的有兩個main()函數? –
爲什麼你有兩個主要功能?它們是單獨的程序,還是它們要連接成一個程序?如果他們在一個程序中被連接在一起,它不應該抱怨最大 - 它應該抱怨重複的主要功能。 –
是的,我知道它可能無法做 –