संभव डुप्लिकेट रिटर्न:
sizeof array of structs in C?
sizeof an array passed as function argumentसी sizeof पूर्णांक सरणी हमेशा 4
बस एक बुनियादी sum()
समारोह लिखने की कोशिश कर।
int sum(int arr[]) {
int total = 0 , i = 0 , l = sizeof arr;
for(i=0;i<l;i++) {
total += arr[i];
}
return total;
}
l
हमेशा 4 के बराबर है (मैं अंत में sizeof int
से विभाजित करने के लिए जानते हैं)
विंडोज 7
'arr' एक सूचक है, एक सरणी नहीं है। फ़ंक्शन घोषणा में उपयोग किए जाने वाले वाक्यविन्यास 'int sum (int * arr)' के लिए केवल आंख कैंडी है। आप [comp.lang.c FAQ] (http://c-faq.com/) की सेक्शन 6 पढ़ना चाहेंगे। – pmg
64 बिट मशीन पर संकलित करें/आपको 8 देखना चाहिए क्योंकि आप पॉइंटर के आकार को देख रहे हैं, सरणी का आकार नहीं। –