将第二个数组的元素添加到第一个数组的末尾
Add elements of second array to the end of first array
我得到了一个由2个元素组成的数组,其结构为:
typedef struct dataPar
{
unsigned long indexGroup;
unsigned long indexOffset;
unsigned long length;
} TDataPar;
TDataPar parReq[2];
typedef struct dataPar2
{
unsigned long data;
} TDataPar2;
TDataPar2 parReqData[2];
来自第二个数组(parReqData
)的数据需要添加到数组1(parReq
)的末尾它需要在第一个数组后面我需要创建第三个数组,其中两个数据都将在我想到了:BYTE tempArray = new BYTE[sizeof(parReq)+sizeof(parReqData)
然后将两个数组复制到tempArray
中,只是不知道是如何
BYTE* tempArray = new BYTE[sizeof(parReq)+sizeof(parReqData)]
memcpy(tempArray, parReq, sizeof(parReq));
memcpy(tempArray + sizeof(parReq), parReqData, sizeof(parReqData));
谢谢约翰,工作得很好!!
如果我做的都是一样的,但我使用的不是固定数组,而是指针数组,这样我就可以声明一个大小可变的数组:我有3个阵列
struct dataPar100
{
unsigned long indexGroup;
unsigned long indexOffset;
unsigned long length;
};
struct dataPar101
{
unsigned long data;
};
unsigned short nrOfSymbols=3;
dataPar100 *parReq100 = new dataPar100[nrOfSymbols];
dataPar101 *parReq101 = new dataPar101[nrOfSymbols];
抱歉,发现它是
BYTE* tempArray2 = new BYTE[nrOfSymbols*(sizeof(*parReq100)+sizeof(*parReq101))];
memcpy(tempArray2, parReq100, (nrOfSymbols*sizeof(*parReq100)));
memcpy(tempArray2 + (nrOfSymbols*sizeof(*parReq100)), parReq101, (nrOfSymbols*sizeof(*parReq101)));
相关文章:
- 在c++中为double类型的数组创建一个unique_ptr
- 从数组构造一个跨度<shared_ptr<T>><shared_ptr<void>>
- 给定一个单词数组和一个字符串,如何计算给定字符串中的所有单词
- 如何将 v8::FunctionCallbackInfo<v8::Value> 数组从一个隔离复制到另一个隔离?
- 我怎么能有一个以2D数组为参数的函数,而数组有一个我想更改的参数/维度
- 为什么我的数组输出一个不在其中的元素
- 数组 - 最后一个索引
- 将数组作为一个参数从一个函数传递到C 中的另一个函数
- 从字符串数组创建一个字符数组
- 如何在C 中的小写中将文本从数组的一个维度传递到另一个维度
- 在对结构数组的一个成员进行排序后,移动其成员的其余部分
- 为什么数组在一个文件中打印,但在发送到另一个文件时却缺少数字
- C++,为什么多维数组的一个元素的增加似乎增加了另一个元素
- 将数组的一个元素与整个数组元素进行比较
- 如何将数组从一个函数传递到另一个函数
- C++:通过引用传递对象数组(指向一个?的指针)
- 查找最大和连续子数组-另一个版本
- 如何使用一个整数数组作为一个无序映射的键
- 使用for循环将char数组的一个元素复制到另一个元素
- C++如何将变量char数组从一个函数传递到另一个函数