问题描述:假设在Ubuntu的一个用户目录下有2个文件,main.c, VectorAdd.cpp,其中 VectorAdd.cpp有vectorAdd函数,main.c提供程序的入口main函数。现在为了在main.c中实现两个向量相加的操作,就需要调用 VectorAdd.cpp中的vectorAdd函数
首先列出两个文件中的内容
//VectorAdd.cpp
extern "C" void VectAdd(int *a, int *b, int *c, int length);
void VectAdd(int *a, int *b, int *c, int length)
{
int i;
for(i = 0; i < length; ++i)
c[i] = a[i] + b[i];
}
//main.c文件
#include <stdio.h>
#include <malloc.h>
int main()
{
int *a, *b, *c;
int length = 32;
int i;
a = (int*)malloc(sizeof(int) * length);
b = (int*)malloc(sizeof(int) * length);
c = (int*)malloc(sizeof(int) * length);
for(i = 0; i < length; ++i)
{
a[i] = i;
b[i] = i;
}
VectAdd(a,b,c,length);
for(i = 0; i < length; i++)
{
printf("%d ",c[i]);
}
printf("\n");
return 0;