我有一个程序,我不得不将一些C和C ++代码融合在一起。我在C中定义了一些全局变量,我需要在C和C ++文件中访问它们,但无法弄明白。这就是我所拥有的,它适用于C文件,但不适用于CPP:
C.h
#ifdef __cplusplus
extern "C" {
#endif
#ifndef _COMMON_H_
#define _COMMON_H_
extern char test[100];
#ifdef __cplusplus
}
#endif
C.C
#include <windows.h>
#include <stdio.h>
#include "C.h"
char test[100] = "value";
CPlusPlus.cpp
#include "C.h"
int TestFunction() {
// I need to access variable test here
}
谢谢, 本
答案 0 :(得分:3)
假设问题是“如何在此处访问变量
test
?”
像这样:
#include "C.h"
#include <cstring>
int TestFunction() {
return strcmp(test, "volvo");
}