#include <stdio.h>
void cat_data(int *data1, const int *data2, int len2) {
while (*data1!= 0) {
data1++;
}
for (int i = 0; i < len2; i++) {
*(data1+i) = *(data2+i);
}
}
int main(void) {
int data1[7] = {1, 2, 0, 0, 0, 0, 0};
int data2[5] = {3, 4, 5, 6, 7};
int len2 = sizeof(data2) / sizeof(data2[0]);
cat_data(data1, data2, len2);
for (int j = 0; j < 7; j++) {
printf("data1[%d] = %d\n", j
, *(data1
+j
)); }
return 0;
}
I2luY2x1ZGUgPHN0ZGlvLmg+Cgp2b2lkIGNhdF9kYXRhKGludCAqZGF0YTEsIGNvbnN0IGludCAqZGF0YTIsIGludCBsZW4yKSB7CgogICAgd2hpbGUgKCpkYXRhMSE9IDApIHsKICAgICAgICBkYXRhMSsrOwogICAgfQogICAgZm9yIChpbnQgaSA9IDA7IGkgPCBsZW4yOyBpKyspIHsKICAgICAgICAqKGRhdGExK2kpID0gKihkYXRhMitpKTsKICAgIH0KCn0KCgppbnQgbWFpbih2b2lkKSB7CiAgICBpbnQgZGF0YTFbN10gPSB7MSwgMiwgMCwgMCwgMCwgMCwgMH07IAogICAgaW50IGRhdGEyWzVdID0gezMsIDQsIDUsIDYsIDd9OwogICAgaW50IGxlbjIgPSBzaXplb2YoZGF0YTIpIC8gc2l6ZW9mKGRhdGEyWzBdKTsKCiAgICBjYXRfZGF0YShkYXRhMSwgZGF0YTIsIGxlbjIpOwoKICAgIGZvciAoaW50IGogPSAwOyBqIDwgNzsgaisrKSB7CiAgICAgICAgcHJpbnRmKCJkYXRhMVslZF0gPSAlZFxuIiwgaiwgKihkYXRhMStqKSk7CiAgICB9CgogICAgcmV0dXJuIDA7Cn0K