马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
#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[3]={1,3,5};
int arr2[3]={2,4,6};
int i;
for(i=0;i<3;i++)
printf("%d ",arr1[i]);
printf("\n");
for(i=0;i<3;i++)
printf("%d ",arr2[i]);
printf("\n");
swapArray(arr1,arr2,3);
for(i=0;i<3;i++)
printf("%d ",arr1[i]);
printf("\n");
for(i=0;i<3;i++)
printf("%d ",arr2[i]);
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[i];
a[i]=b[i];
b[i]=temp;
}
}
这个代码运行出来的结果是
1 3 5
2 4 6
swapping now
2 4 6
1 3 5
两个数组在自定义函数里交换后的结果被带出来了,这是为什么? |