【发布时间】:2012-10-25 06:13:00
【问题描述】:
我是 VC++ 的新手,我需要在函数之间传递 4 个数组,所以我使用另一个数组来存储它们的指针。我做对了吗?
unsigned int* step1(...) {
...
// save data arrays
unsigned int* savedData = new unsigned int[4];
savedData[0] = *data0;
savedData[1] = *data1;
savedData[2] = *data2;
savedData[3] = *data3;
return savedData;
}
unsigned char* step2(unsigned int* savedData, ...) {
// read data arrays
unsigned int* data0 = &savedData[0];
unsigned int* data1 = &savedData[1];
unsigned int* data2 = &savedData[2];
unsigned int* data3 = &savedData[3];
...
}
【问题讨论】:
-
4 arrays between functions你没有 4 个数组。您有 1 个包含 4 个元素的数组。 -
不,data0-4是实际在函数中动态分配的数组。
-
我推荐阅读一些books on C++。
标签: c++ arrays visual-c++ pointers