6

我有一个 NSSlider 试图将常规浮点数转换为 CGFloat。我正在使用的代码:

CGFloat testing = [mainSlider floatValue];

但是,当我尝试记录它时,这只会使测试变量“0.00”。

NSLog(@"%f", testing);

有没有人知道为什么会发生这种情况?谢谢你的帮助。

4

1 回答 1

10
  1. 检查 mainSlider 是否为 nil
  2. 试试这个以防万一(不记得 CGFloat 是否是双精度)

    NSLog(@"%f", (double)testing);

  3. 检查变量是否没有像这样被遮蔽:

    CGFloat testing = 0.0;
    if(YES){
        CGFloat testing = [mainSlider floatValue];
        //should be: testing = [mainSlider floatValue];
    }
    NSLog(@"testing = %f", testing); //this will print "testing = 0.000000"
    
于 2009-08-04T03:15:11.500 回答