NSInteger myInt = 1804809223;
NSLog(@"%i", myInt); <====
उपरोक्त कोड एक त्रुटि पैदा करता है:
प्रकार 'NSInteger' के मानों का उपयोग प्रारूप तर्क के रूप में नहीं किया जाना चाहिए; इसके बजाय एक स्पष्ट कलाकारों को 'लंबे' में जोड़ें
सही NSLogसंदेश वास्तव में है NSLog(@"%lg", (long) myInt);। मैं क्यों की पूर्णांक मान परिवर्तित करने के लिए क्या myIntकरने के लिए longअगर मैं प्रदर्शित करने के लिए मूल्य चाहते हैं?
NSIntegerहै , लेकिन ऐसा लगता है कि आप ओएस एक्स लक्ष्य (जहां है ) के साथ संकलन कर रहे हैं । NSInteger long
NSLog(@"%ld", (long) myInt);, तोlongकास्ट कोlक्वालिफायर के साथ मैच करना होता है%ld, लेकिन यह सब अनावश्यक है जैसाNSLog(@"%d", myInt);कि पर्याप्त है (यह देखते हुए कि हमmyIntनहीं देख सकते हैंlong। नीचे की रेखा,myIntयदि आप प्रारूप में लंबे समय तक क्वालीफायर का उपयोग कर रहे हैं)। स्ट्रिंग, लेकिन यहां लंबे स्ट्रिंग प्रारूप वाले क्वालीफायर याlongकास्ट का उपयोग करने की कोई आवश्यकता नहीं है।