求助!
#include <stdio.h>void add(int a, int b){
a+=3;
b*=6;
printf("a=%d, b=%d\n",a,b);
}
int main(){
int x=1, y=2;
add(x, y);
printf("x=%d, y=%d\n", x, y);
return 0;
}
这个代码运行出来的结果是
x=4, y=12
x=1, y=2
两个数在自定义的函数里的结果没有带出来
#include <stdio.h>
void swapArray(int a[ ],int b[ ],int length);
int main(){
int arr1={1,3,5};
int arr2={2,4,6};
int i;
for(i=0;i<3;i++)
printf("%d",arr1);
printf("\n");
for(i=0;i<3;i++)
printf("%d",arr2);
printf("\n");
swapArray(arr1,arr2,3);
for(i=0;i<3;i++)
printf("%d",arr1);
printf("\n");
for(i=0;i<3;i++)
printf("%d",arr2);
printf("\n");
return 0;
}
void swapArray(int a[],int b[],int length){
int i,temp;
printf("swapping now\n");
for(i=0;i<length;i++){
temp=a;
a=b;
b=temp;
}
}
这个代码运行出来的结果是
135
246
swapping now
246
135
两个数组在自定义函数里交换后的结果被带出来了,这是为什么?
页:
[1]