これは比較的単純な質問だと思いますが、何が起こっているのか正確にはわかりません。
NSString の stringWithFormat を使用して文字列を構築しようとするメソッドがあります
次のようになります。
NSString *line1 = [NSString stringWithFormat:@"the car is %d miles away", self.ma];
上記の行で「self.ma」は int である必要がありますが、私の場合、エラーが発生し、「self.ma」は実際には NSString を指しています。
だから、私はその行が読むべきであることを理解しています
NSString *line1 = [NSString stringWithFormat:@"the car is %@ miles away", self.ma];
しかし、私の質問は、最初の例の %d が私の NSString に対して何をしているのかということです。
デバッガーを使用すると、「self.ma」が「32444」に等しい場合があることがわかりますが、どういうわけか %d はそれを 1255296 に変換します。
32444 => 1255296 の変換は、ある種の基数変換 (16 進数から 10 進数など) であると推測していましたが、そうではないようです。
%d が私の文字列に対して何をしているのかについて何か考えはありますか?
ティア