LoginSignup
4
4

More than 5 years have passed since last update.

Objective-Cで定数

Posted at

"=" 要らないけど文字列は@が必要だったりしてややこしかったのでメモ。

数値

#define NANIKA 100

NSString *str = [NSString stringWithFormat:@"%d", NANIKA];
NSLog(str);

=> 100

大文字、小文字で別扱い

#define NANIKA 100
#define nanika 200

NSString *str = [NSString stringWithFormat:@"%d & %d", NANIKA, nanika];
NSLog(str);

=> 100 & 200

計算

#define NANIKA 100
#define nanika 200

NSString *str = [NSString stringWithFormat:@"%d", NANIKA + nanika];
NSLog(str);

=> 300

文字列

@が必要

#define MOJI mojidesuyo

NSLog(MOJI);

=> ビルドエラー

#define MOJI "mojidesuyo"

NSLog(MOJI);

=> ビルドは通るけど呼び出し時にクラッシュ

#define MOJI @"mojidesuyo"

NSLog(MOJI);

=> mojidesuyo

stringWithFormatと組み合わせられる

#define NANIKA 100
#define nanika 200
#define MOJI @"%d は %d より %d 大きい"

NSLog([NSString stringWithFormat:MOJI, nanika, NANIKA, nanika - NANIKA]);

=> 200 は 100 より 100 大きい

4
4
2

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
4