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