#include <stdio.h>
void cat_data(int *data1, const int *data2, int len2)
{
// data1 の後ろ(7個の次)に data2 を順にコピー
for(int i = 0; i < len2; i++){
data1[7 + i] = data2[i];
}
}
int main(void)
{
int data1[12] = {1, 2}; // 連結後を入れるために12要素確保
int data2[5] = {3, 4, 5, 6, 7};
int len2 = sizeof(data2) / sizeof(data2[0]);
cat_data(data1, data2, len2);
for(int i = 0; i < 12; i++){
printf("data1[%d] = %d\n", i
, data1
[i
]); }
return 0;
}
I2luY2x1ZGUgPHN0ZGlvLmg+Cgp2b2lkIGNhdF9kYXRhKGludCAqZGF0YTEsIGNvbnN0IGludCAqZGF0YTIsIGludCBsZW4yKQp7CiAgICAvLyBkYXRhMSDjga7lvozjgo3vvIg35YCL44Gu5qyh77yJ44GrIGRhdGEyIOOCkumghuOBq+OCs+ODlOODvAogICAgZm9yKGludCBpID0gMDsgaSA8IGxlbjI7IGkrKyl7CiAgICAgICAgZGF0YTFbNyArIGldID0gZGF0YTJbaV07CiAgICB9Cn0KCmludCBtYWluKHZvaWQpCnsKICAgIGludCBkYXRhMVsxMl0gPSB7MSwgMn07ICAgICAgIC8vIOmAo+e1kOW+jOOCkuWFpeOCjOOCi+OBn+OCgeOBqzEy6KaB57Sg56K65L+dCiAgICBpbnQgZGF0YTJbNV0gPSB7MywgNCwgNSwgNiwgN307CgogICAgaW50IGxlbjIgPSBzaXplb2YoZGF0YTIpIC8gc2l6ZW9mKGRhdGEyWzBdKTsKCiAgICBjYXRfZGF0YShkYXRhMSwgZGF0YTIsIGxlbjIpOwoKICAgIGZvcihpbnQgaSA9IDA7IGkgPCAxMjsgaSsrKXsKICAgICAgICBwcmludGYoImRhdGExWyVkXSA9ICVkXG4iLCBpLCBkYXRhMVtpXSk7CiAgICB9CgoJcmV0dXJuIDA7Cn0K