#include <stdio.h>
void cat_data(int *data1, const int *data2, int len2)
{
int i;
for (i = 0; i < len2; i++) {
data1[2 + i] = data2[i];
}
}
void cat_data(int *data1, const int *data2, int len2);
int main(void)
{
int data1[7] = {1, 2}; // 残り5つは連結部分
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 < 7; i++) {
printf("data1[%d] = %d\n", i
, data1
[i
]); }
return 0;
}
I2luY2x1ZGUgPHN0ZGlvLmg+Cgp2b2lkIGNhdF9kYXRhKGludCAqZGF0YTEsIGNvbnN0IGludCAqZGF0YTIsIGludCBsZW4yKQp7CiAgICBpbnQgaTsKICAgIGZvciAoaSA9IDA7IGkgPCBsZW4yOyBpKyspIHsKICAgICAgICBkYXRhMVsyICsgaV0gPSBkYXRhMltpXTsKICAgIH0KfQoKdm9pZCBjYXRfZGF0YShpbnQgKmRhdGExLCBjb25zdCBpbnQgKmRhdGEyLCBpbnQgbGVuMik7CgppbnQgbWFpbih2b2lkKQp7CiAgICBpbnQgZGF0YTFbN10gPSB7MSwgMn07ICAgICAgICAgICAgLy8g5q6L44KKNeOBpOOBr+mAo+e1kOmDqOWIhgogICAgaW50IGRhdGEyWzVdID0gezMsIDQsIDUsIDYsIDd9OwoKICAgIGludCBsZW4yID0gc2l6ZW9mKGRhdGEyKSAvIHNpemVvZihkYXRhMlswXSk7CgogICAgY2F0X2RhdGEoZGF0YTEsIGRhdGEyLCBsZW4yKTsKCiAgICAvLyDlh7rlipvvvIjkvovjgajlkIzjgZjlvaLlvI/vvIkKICAgIGZvciAoaW50IGkgPSAwOyBpIDwgNzsgaSsrKSB7CiAgICAgICAgcHJpbnRmKCJkYXRhMVslZF0gPSAlZFxuIiwgaSwgZGF0YTFbaV0pOwogICAgfQoKICAgIHJldHVybiAwOwp9Cg==