码迷,mamicode.com
首页 > 其他好文 > 详细

一个不小心犯的指针错误

时间:2015-03-07 16:52:47      阅读:106      评论:0      收藏:0      [点我收藏+]

标签:

尝试达到下面的效果:

技术分享

输入框输入字符,单击按钮改变label框的值:

技术分享

ViewController.h

 1 #import <UIKit/UIKit.h>
 2 
 3 @interface ViewController : UIViewController
 4 
 5 @property (nonatomic,assign) IBOutlet UITextField *input1;
 6 @property (nonatomic,assign) IBOutlet UILabel *output1;
 7 
 8 
 9 - (IBAction)click1;
10 @end

 

ViewController.m

 1 #import "ViewController.h"
 2 
 3 @interface ViewController ()
 4 
 5 @end
 6 
 7 @implementation ViewController
 8 
 9 - (void)viewDidLoad {
10     [super viewDidLoad];
11     // Do any additional setup after loading the view, typically from a nib.
12 }
13 
14 - (void)didReceiveMemoryWarning {
15     [super didReceiveMemoryWarning];
16     // Dispose of any resources that can be recreated.
17 }
18 - (void)click1{
19 //    NSString *input1 = _input1.text;
20 //    NSString *output1 = _output1.text;
21 //    output1 = input1;
22     NSString *input1 = _input1.text;
23     _output1.text = input1;
24     NSString *output1 = _output1.text;
25     
26     
27     NSLog(@"test:%@,%@",input1,output1);
28     
29     
30 }
31 
32 @end

click1方法里面我一开始是写的注释掉的3行,运行后正常打印,但是label的text值并未改变。原因是"output1 = input1"只是改变了output1指向而已,使output1这个指向了input1所指向的地址,而_output1的set方法并不会被调用。好吧,我也不知道为什么开始会那样写orz.

 

一个不小心犯的指针错误

标签:

原文地址:http://www.cnblogs.com/mikado-Q/p/4320460.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!