1

我有一个程序,我被迫将一些 C 和 C++ 代码融合在一起。我在 C 中定义了一些全局变量,我需要在 C 和 C++ 文件中访问它们,但无法弄清楚。这是我所拥有的,它适用于 C 文件,但不适用于 CPP:

通道

#ifdef __cplusplus
extern "C" {
#endif

#ifndef _COMMON_H_
#define _COMMON_H_

extern char test[100];

#ifdef __cplusplus
}
#endif

抄送

#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
}

谢谢,本

4

1 回答 1

3

假设问题是“我如何在test这里访问变量?”</p>

像这样:

#include "C.h"
#include <cstring>
int TestFunction() {
  return strcmp(test, "volvo");
}
于 2012-11-02T15:53:34.360 回答