2013-03-28 106 views
-3

我想知道什麼將是下面的代碼整數格式化字符串IOS

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

結果我得到的是18036的結果,18052

我用了一個錯誤的格式說明在我的代碼,來到穿越這個奇怪的結果。我稍後再修正它。但我想知道它究竟打印出了什麼。

感謝

回答

1

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

你傳遞指向字符串作爲參數,但格式字符串指定的整數。一個好的猜測是指針將被解釋爲整數,所以輸出將取決於內存中字符串碰巧被分配的位置。

0

我猜測它打印出的字符串指針地址

+1

這並沒有提供問題的答案。要批評或要求作者澄清,在他們的帖子下留下評論 - 你可以隨時評論你自己的帖子,一旦你有足夠的[聲譽](http://stackoverflow.com/faq#reputation),你將能夠[評論任何帖子](http://stackoverflow.com/privileges/comment)。 – nickhar

+0

雖然如此,但我想知道它顯示的是什麼。 – pa12

+0

問題是「但我想知道它究竟打印出了什麼。」我想我的回答非常接近 –