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