NSInteger myInt = 1804809223;
NSLog(@"%i", myInt); <====
উপরের কোডটি একটি ত্রুটি তৈরি করে:
'NSInteger' প্রকারের মানগুলি বিন্যাসের আর্গুমেন্ট হিসাবে ব্যবহার করা উচিত নয়; পরিবর্তে 'দীর্ঘ' এ একটি স্পষ্ট কাস্ট যোগ করুন
সংশোধিত NSLog
বার্তাটি আসলে NSLog(@"%lg", (long) myInt);
। আমি মানটি প্রদর্শন myInt
করতে long
চাইলে আমাকে কেন পূর্ণসংখ্যা মানকে রূপান্তর করতে হবে?
NSInteger
হয় না দীর্ঘ), কিন্তু শোনাচ্ছে মত আপনি OS X লক্ষ্য (যেখানে সঙ্গে কম্পাইল করছি NSInteger
হয় long
)।
NSLog(@"%ld", (long) myInt);
,long
ঢালাই এটি সঙ্গে আপ মেলে করা হয়l
এর কোয়ালিফায়ার%ld
, কিন্তু যে সব অপ্রয়োজনীয় হিসাবেNSLog(@"%d", myInt);
(যথেষ্ট দেওয়া আমরা দেখতে পারি যে যেmyInt
নয়long
। বটম লাইন, আপনি নিক্ষেপmyInt
বিন্যাসে দীর্ঘ কোয়ালিফায়ার ব্যবহার করা হয় তবে স্ট্রিং, তবে লম্বা স্ট্রিং ফর্ম্যাট কোয়ালিফায়ার বাlong
কাস্ট করার দরকার নেই