2010-10-27 12 views
14

संभव डुप्लिकेट:
How to printf “unsigned long” in C?सी में printf के साथ एक हस्ताक्षरित लंबी int मुद्रित करने के लिए कैसे?

मैं तो जैसे मेरा नंबर है ...

int unsigned long number = 600851475143; 

मैं printf() साथ इसे प्रिंट करने की कोशिश कर रहा हूँ। हर बार जब मैं कोशिश करता हूं, मुझे संकलक द्वारा चेतावनी मिलती है।

मैंने %uld, %ld की कोशिश की है और गूगलिंग मुझे जवाब नहीं ढूंढ रहा है।

मैं सी सीख रहा हूँ, लेकिन इससे पहले एक long int उपयोग करने के लिए नहीं था, इसलिए मुझे यकीन है कि मैं क्या उपयोग करना चाहिए नहीं कर रहा हूँ।

क्या विनिर्देशक मैं पीछा कर रहा हूँ है?

+0

http://projecteuler.net/problem=3 आप इसे पढ़ सकते –

+0

http://en.cppreference.com/w/cpp/io/c/fprintf –

उत्तर

26

मैं मानक आदेश (अर्थात अहस्ताक्षरित लंबे int) का उपयोग करें। %lu वह प्रारूप टैग है जिसे आप ढूंढ रहे हैं।

printf("%lu", 5ul); 
+1

क्षमा करें, मुझे नहीं पता था कि एक पारंपरिक आदेश था। मुझे बताने के लिए धन्यवाद। – alex

7
int unsigned long number = 600851475143LU; 
printf("%lu", number); 

प्रिंट 600851475143

+0

उस पूर्णांक के अंत में 'L' जोड़ने के लिए मत भूलना। –

+0

अरग, हाँ .. टिप्पणी के लिए धन्यवाद। मैंने बस इसे पोस्ट किए गए प्रश्न से कॉपी किया है। –

संबंधित मुद्दे