---------------
main.m
---------------
#import
<Foundation/Foundation.h>
@interface
People :
NSObject
@property
int
age;
@property
int
height;
@end
@implementation People
@end
void swap( People * Who) // 目的:把年龄值与身高值互换
{
int tmp = Who. age ;
Who. age = Who. height ;
Who. height = tmp;
NSLog ( @" 传入 swap 函数后,年龄是: %d ;身高是: %d" , Who. age , Who. height );
}
int main()
{
People * Jack = [[ People alloc ] init ];
Jack. age = 18 ;
Jack. height = 50 ;
NSLog ( @" 原本,杰克的年龄是: %d ;身高是: %d" , Jack. age , Jack. height );
swap (Jack);
NSLog ( @" 交换结束后,年龄是: %d ;身高是: %d" , Jack. age , Jack. height );
@implementation People
@end
void swap( People * Who) // 目的:把年龄值与身高值互换
{
int tmp = Who. age ;
Who. age = Who. height ;
Who. height = tmp;
NSLog ( @" 传入 swap 函数后,年龄是: %d ;身高是: %d" , Who. age , Who. height );
}
int main()
{
People * Jack = [[ People alloc ] init ];
Jack. age = 18 ;
Jack. height = 50 ;
NSLog ( @" 原本,杰克的年龄是: %d ;身高是: %d" , Jack. age , Jack. height );
swap (Jack);
NSLog ( @" 交换结束后,年龄是: %d ;身高是: %d" , Jack. age , Jack. height );
}
一、编写本节代码的具体步骤:
1.参照003节的代码编写步骤。
二、本节代码涉及到的知识点:
1.People* Jack,这是一个指针类型的变量,我们把这个变量传到swap函数中,
swap函数会找到指针指向的存储空间,进而修改Jack的年龄值与身高值。
2.指针类型的参数传递,不是单纯的值传递。它传入的就是Jack这个对象本身,
而不是Jack的复制品或者变量值。