-3

次のコードの結果がどうなるか知りたい

NSString *str = @"0";
NSString *str1 = @"12";
NSLog(@"str int value %d, %d",str, str1);

私が得た結果は18036、18052です

コードで間違った書式指定子を使用したため、この奇妙な結果に遭遇しました。後で修正しました。しかし、私はそれが正確に何を印刷するのか知りたかったのです。

ありがとう

4

2 に答える 2

1

NSLog(@"str int value %d, %d",str, str1);

パラメータとして文字列へのポインタを渡していますが、フォーマット文字列は整数を指定しています。ポインターは整数として解釈されるため、出力はメモリ内のどこに文字列が割り当てられているかによって異なると推測できます。

于 2013-03-28T20:10:37.747 に答える
0

文字列ポインタアドレスを出力したと思います

于 2013-03-28T20:10:41.200 に答える