怎么用c语言指针合并数组

avatar
作者
猴君
阅读量:1

在C语言中,你可以使用指针来合并两个数组。以下是一种方法:

  1. 声明两个数组以及一个用于存储合并后数组的指针变量。
int arr1[] = {1, 2, 3, 4, 5}; int arr2[] = {6, 7, 8, 9, 10}; int *mergedArr; 
  1. 计算合并后数组的长度。
int mergedArrLength = sizeof(arr1) / sizeof(arr1[0]) + sizeof(arr2) / sizeof(arr2[0]); 
  1. 为合并后的数组分配内存。
mergedArr = (int *)malloc(mergedArrLength * sizeof(int)); 
  1. 使用循环将arr1和arr2的元素依次复制到合并后数组中。
int i; for(i = 0; i < sizeof(arr1)/sizeof(arr1[0]); i++){     mergedArr[i] = arr1[i]; } for(i = 0; i < sizeof(arr2)/sizeof(arr2[0]); i++){     mergedArr[sizeof(arr1)/sizeof(arr1[0]) + i] = arr2[i]; } 
  1. 合并后数组的指针mergedArr现在指向合并后的数组,你可以使用它来访问合并后数组的元素。
for(i = 0; i < mergedArrLength; i++){     printf("%d ", mergedArr[i]); } 
  1. 记得在使用完之后释放合并后数组的内存。
free(mergedArr); 

上述代码会将两个数组arr1和arr2合并成一个新的数组,并通过指针mergedArr来访问合并后数组的元素。

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!