用指針交換兩個參數的值:
#include <stdio.h>
void swap(int *v1, int *v2);
int main()
{
/*
int a = 10;
int b = 11;
swap(&a, &b);
*/
int a2 = 90;
int b2 = 89;
swap(&a2, &b2);
printf("a2=%d, b2=%d\n", a2, b2);
return 0;
}
/* 不能交換外面實參的值,僅僅是交換了內部指針的指向
void swap(int *v1, int *v2)
{
int *temp;
temp = v1;
v1 = v2;
v2 = temp;
}*/
// 完成兩個整型變量值的互換
void swap(int *v1, int *v2)
{
int temp = *v1;
*v1 = *v2;
*v2 = temp;
}
/* 交換的只是內部v1、v2的值
void swap(int v1, int v2)
{
int temp = v1;
v1 = v2;
v2 = temp;
}*/
#include <stdio.h>
int sumAndMinus(int n1, int n2, int *n3);
利用指針實現函數多個返回值:
int main()
{
int a = 10;
int b = 7;
// 存儲和
int he;
// 存儲差
int cha;
c
he = sumAndMinus(a, b, &cha);
printf("和是%d, 差是%d\n", he, cha);
return 0;
}
// 返回值是
int sumAndMinus(int n1, int n2, int *n3)
{
*n3 = n1 - n2;
return n1 + n2;
}