Object-C NSLogでログを印刷する
NSLogのフォーマットは以下の通りです.
NSLogの定義
NSLogはNSObjCRuntimeに定義する.hでは、以下のようになる.
基本的にNSLogはprintfに似ており,同様にconsoleに表示結果が出力される.異なることに、渡されたフォーマット文字はchat*という文字列ポインタではなくNSStringのオブジェクトです.
例
NSLogは次のように使用できます.
しかし、次の書き方はだめです.
なぜなら、%@はオブジェクトを表示する必要がありますが、int iは明らかにオブジェクトではありません.正しく表示するには、次のように書きます.
* %@
* %d, %i
* %u
* %f /
* %x, %X
* %o
* %zu size_t
* %p
* %e / ( )
* %g /
* %s C
* %.*s Pascal
* %c
* %C unichar
* %lld 64 (long long)
* %llu 64
* %Lf 64
NSLogの定義
NSLogはNSObjCRuntimeに定義する.hでは、以下のようになる.
void NSLog(NSString *format, …);
基本的にNSLogはprintfに似ており,同様にconsoleに表示結果が出力される.異なることに、渡されたフォーマット文字はchat*という文字列ポインタではなくNSStringのオブジェクトです.
例
NSLogは次のように使用できます.
NSLog (@”this is a test”);
NSLog (@”string is :%@”, string);
NSLog (@”x=%d, y=%d”, 10, 20);
しかし、次の書き方はだめです.
int i = 12345;
NSLog( @”%@”, i );
なぜなら、%@はオブジェクトを表示する必要がありますが、int iは明らかにオブジェクトではありません.正しく表示するには、次のように書きます.
int i = 12345;
NSLog( @”%d”, i );