web-dev-qa-db-ja.com

NSLogでint *とunsigned int *を印刷するにはどうすればよいですか?

印刷方法int*(intポインター)およびunsigned int*NSLog?を使用したログ

- (int) doSomethingWith:(unsigned int)Msg withWparam:(unsigned int*)wParam withParameter:(int *) lParam
{
    NSLog(@"MSg:%d wParam:%u lParam:%u",Msg,wParam,lParam);
//not working
    return 1;
}

警告:Format specifies type 'unsigned int' but the argument has type 'unsigned int *'

29
HDdeveloper

intには%dを使用します。また、パラメーターはポインターであるため、*を使用して、ポイントされた値にアクセスします。

NSLog(@"MSg:%d wParam:%u lParam:%d",Msg,*wParam,*lParam);
44
Joris Kluivers

%@はオブジェクト用です。 BOOLはオブジェクトではありません。 %dを使用する必要があります。
データ型に基づいて%@は次のように変更されます

For Strings you use %@
For int  you use %i
For float you use %f
For double you use %lf
10
Vaibhav Sharma