switch文内で変数を代入したい


自分なりにいろいろ調べてみたのですがどうしても分からないので質問させていただきます。 XCode 5.0 です

[code]

    -(void)tick:(NSTimer *) theTimer  {
    
        switch (segment.selectedSegmentIndex){
            case 0:
                [self countTimeup=kTimeup];
                break;
    
            case 1:
                [self countTimeup=hTimeup];
                break;
    
            case 2:
                [self countTimeup=eTimeup];
                break;
    
            default:
                break;
    
        }        
    }
    
[/code]

エラーが出るのは三カ所の `[self countTimeup~];` で `Expected']'` のエラーが出ます。
SegmentedControlのボタンによってcountTimeupに違う値を代入したいです。
質問の意図が分かりにくかったら申し訳ないです、どうかお助けください。

**追記分**

ありがとうございます以下がエラーメッセージになります。

[code]

    [self setcountTimeup:kTimeup];
    No visible @interface for 'ViewController' declares the selector 'setcountTimeup:'
     self.countTimeup=kTimeup;
    Property 'countTimeup' not found on object of type 'ViewController *'; did you mean to access instance variable 'countTimeup'?
    countTimeup=kTimeup;
    Assigning to 'NSInteger *' (aka 'int *') from incompatible type 'float'
    
[/code]

念のためすべてのパターンを書いておきました。

**再追記分**

Onodaさん見にくいのでこちらに書きました、ご確認お願いします。

[code]

    #define kTimeup (2.0f/kTimerMoleInterval)
    
    #define hTimeup (1.0f/hTimerMoleInterval)
    
    #define eTimeup (0.5f/eTimerMoleInterval)
    
    #define kTimerMoleInterval 1.0f
    #define hTimerMoleInterval 0.5f
    #define eTimerMoleInterval 0.3f
    
[/code]

`countTimeup` は `.m` 内の

[code]

    @implementation ViewController{}
    NSInteger *countTimeup;
    
[/code]

このように記述しています。




countTimeup と kTimeup/hTimeup/eTimeup の定義はどこに、どのように記述してるでしょうか？

これが分からないことには正解を答えることはできませんが、エラーから察するにクラスに属する変数ではなさそうなので、変数の型を合わせて↓のスタイルで代入してみてください。

[code]

    countTimeup=kTimeup;
    
[/code]




countTimeupがプロパティであれば

[code]

    [self setCountTimeup:kTimeup];
    
[/code]

または

[code]

    self.countTimeup=kTimeup;
    
[/code]

だと思われます。

変数であれば

[code]

    countTimeup=kTimeup;
    
[/code]

です。

エラーの内容からすると、kTimeupはポインタ型のようですので`*kTimeup`としてください。

