有数组A[]={1,5}和数组B[]={},用C语言指针把数组A的值传给B
时间: 2023-12-15 13:04:40 浏览: 32
在 C 语言中,可以通过使用指针来将数组 A 的值传给数组 B。具体的实现方式是,将数组 A 和数组 B 的指针作为参数传递给一个函数,并在函数中使用指针来将数组 A 的值复制给数组 B。例如:
```
void copyArray(int *A, int *B, int n) {
for(int i = 0; i < n; i++) {
B[i] = A[i];
}
}
int main() {
int A[] = {1, 5};
int B[2];
copyArray(A, B, 2);
printf("Array B: {%d, %d}", B[0], B[1]);
return 0;
}
```
在上面的例子中,我们定义了一个名为 `copyArray` 的函数,并将数组 A 和数组 B 的指针以及数组长度作为参数传递给该函数。在函数中,我们通过使用指针来将数组 A 的值复制给数组 B。最后,在 `main` 函数中,我们定义了数组 A 和数组 B,并调用 `copyArray` 函数将数组 A 的值复制给数组 B,并打印数组 B 的值。
相关问题
C语言1编写一个使用指针的c函数,交换数组a和数 组b中的对应元素
可以这样编写一个使用指针的C函数,交换数组a和数组b中的对应元素:
```c
void swap_arrays(int* a, int* b, int size) {
for (int i = 0; i < size; i++) {
int temp = *(a + i);
*(a + i) = *(b + i);
*(b + i) = temp;
}
}
```
这个函数接受两个指向整数数组的指针 a 和 b,以及数组的大小 size。在函数内部,我们使用一个循环迭代数组中的每个元素,并使用指针交换 a 和 b 数组中对应位置的元素。具体而言,我们首先将 a[i] 的值存储在 temp 变量中,然后将 b[i] 的值存储在 a[i] 中,最后将 temp 的值存储在 b[i] 中,从而完成交换。
可以在主函数中调用这个函数,例如:
```c
int main() {
int a[5] = {1, 2, 3, 4, 5};
int b[5] = {6, 7, 8, 9, 10};
swap_arrays(a, b, 5);
// 打印交换后的结果
printf("a: ");
for (int i = 0; i < 5; i++) {
printf("%d ", a[i]);
}
printf("\n");
printf("b: ");
for (int i = 0; i < 5; i++) {
printf("%d ", b[i]);
}
printf("\n");
return 0;
}
```
这个程序将输出:
```
a: 6 7 8 9 10
b: 1 2 3 4 5
```
c语言用指针将数组a全部拷贝到数组b
可以使用以下代码将数组a全部拷贝到数组b:
```
int a[10] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10};
int b[10];
int *ptr_a = a;
int *ptr_b = b;
for(int i = 0; i < 10; i++){
*(ptr_b + i) = *(ptr_a + i);
}
```
首先定义两个数组a和b,然后定义两个指针ptr_a和ptr_b,分别指向数组a和数组b的首元素。接着使用for循环,依次将数组a中的元素通过指针复制到数组b中,最后数组b中就保存了与数组a相同的元素序列。