#include <stdio.h>
#include <stdlib.h>
int main(void) {
int **p;
int *arr,i;
p
= malloc(sizeof(int *)); // allocate memory for 1 int 8* p
[0]=malloc(5*sizeof(int)); // allocate memory to int * for(i = 0; i < 5; i++){
p[0][i] = i+1; // initialization
}
arr
= malloc(5 * sizeof(int)); // allocate memory to arr memcpy(arr
,&p
[0][2],3*sizeof(int)); // copy last 3 elements to arr
for( i=0;i<3;i++){
printf("%d",arr
[i
]); // print value in arr }
return 0;
}
I2luY2x1ZGUgPHN0ZGlvLmg+CiNpbmNsdWRlIDxzdGRsaWIuaD4KaW50IG1haW4odm9pZCkgewoJCiAgIGludCAqKnA7CiAgIGludCAqYXJyLGk7CiAgIHA9IG1hbGxvYyhzaXplb2YoaW50ICopKTsgICAgICAgIC8vIGFsbG9jYXRlIG1lbW9yeSBmb3IgMSBpbnQgOCoKICAgcFswXT1tYWxsb2MoNSpzaXplb2YoaW50KSk7ICAgICAgLy8gYWxsb2NhdGUgbWVtb3J5IHRvIGludCAqCiAgIGZvcihpID0gMDsgaSA8IDU7IGkrKyl7CiAgICAgICAgcFswXVtpXSA9IGkrMTsgICAgICAgICAgICAgLy8gaW5pdGlhbGl6YXRpb24KICAgICB9ICAgICAgCiAgYXJyPSBtYWxsb2MoNSAqIHNpemVvZihpbnQpKTsgICAgICAgIC8vIGFsbG9jYXRlIG1lbW9yeSB0byBhcnIKICBtZW1jcHkoYXJyLCZwWzBdWzJdLDMqc2l6ZW9mKGludCkpOyAgLy8gY29weSBsYXN0IDMgZWxlbWVudHMgdG8gYXJyCgogIGZvciggaT0wO2k8MztpKyspeyAgICAgICAgICAgICAgCiAgICAgcHJpbnRmKCIlZCIsYXJyW2ldKTsgICAgICAgICAgICAgIC8vIHByaW50IHZhbHVlIGluIGFycgogICB9CiAgZnJlZShwWzBdKTsKICBmcmVlKHApOwogIGZyZWUoYXJyKTsKCglyZXR1cm4gMDsKfQo=