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