异常
mingw32-g++.exe -o CTranslater.exe .objs\lexanalyse.o .objs\main.o
.objs\main.o:main.c:(.rdata+0x0): multiple definition of `BOUNDARY_SIGNS'
.objs\lexanalyse.o:lexanalyse.c:(.rdata+0x0): first defined here
.objs\main.o:main.c:(.rdata+0x8): multiple definition of `OPERATORS'
.objs\lexanalyse.o:lexanalyse.c:(.rdata+0x8): first defined here
.objs\main.o:main.c:(.rdata+0x20): multiple definition of `KEYS'
.objs\lexanalyse.o:lexanalyse.c:(.rdata+0x20): first defined here
.objs\main.o:main.c:(.rdata+0xa0): multiple definition of `TYPES'
.objs\lexanalyse.o:lexanalyse.c:(.rdata+0xa0): first defined here
collect2.exe: error: ld returned 1 exit status
Process terminated with status 1 (0 minute(s), 0 second(s))
1 error(s), 0 warning(s) (0 minute(s), 0 second(s))
解决方法
将重复定义的常量或数组使用static修饰