fork download
  1. #include <stdio.h>
  2.  
  3. void cat_data(int *data1, const int *data2, int len2){
  4. int i = 0, j;
  5. while(data1[i] != NULL){
  6. i++;
  7. }
  8. for(j=0;j<len2;j++){
  9. data1[i+j] = data2[j];
  10. }
  11. }
  12.  
  13. int main()
  14. {
  15. int data1[7], data2[5], i, a;
  16. a=5;//data1[]に入れる最大の値
  17. for(i=0;i<7;i++){
  18. if(i<a){
  19. data1[i] = i + 1;
  20. }
  21. else{
  22. data2[i-a] = i + 1;
  23. }
  24. }
  25. int len2 = sizeof(data2) / sizeof(data2[0]);
  26.  
  27. printf("before:\n");
  28.  
  29. for(i=0;i<7;i++){
  30. if(i<a){
  31. printf("data1[%d] = %d\n",i,data1[i]);
  32. }
  33. else{
  34. printf("data2[%d] = %d\n",i-a,data2[i-a]);
  35. }
  36. }
  37.  
  38. printf("len2 = %d\n",len2);
  39.  
  40. cat_data(data1, data2, len2);
  41.  
  42. printf("after:\n");
  43.  
  44. for(i=0;i<7;i++){
  45. printf("data1[%d] = %d\n",i,data1[i]);
  46. }
  47.  
  48. return 0;
  49. }
Success #stdin #stdout 0s 5320KB
stdin
Standard input is empty
stdout
before:
data1[0] = 1
data1[1] = 2
data1[2] = 3
data1[3] = 4
data1[4] = 5
data2[0] = 6
data2[1] = 7
len2 = 5
after:
data1[0] = 1
data1[1] = 2
data1[2] = 3
data1[3] = 4
data1[4] = 5
data1[5] = 6
data1[6] = 7