Arrays
Ek C array ka ek fixed size hota hai jo creation ke time set hota hai, aur use badhane ka koi built-in tarika nahi hai, aur — is site ki har doosri language ke ulat — iska apna koi length property nahi hoti. sizeof(array) / sizeof(array[0]) array ka element count nikalne ka standard trick hai, aur ye sirf tab kaam karta hai jab tak array abhi bhi scope mein array hi hai (pointer mein decay hone ke baad nahi, jo agli lesson mein aata hai).
#include <stdio.h>
int main() {
int numbers[5] = {4, 8, 15, 16, 23};
int sum = 0;
for (int i = 0; i < 5; i++) {
sum += numbers[i];
}
printf("%d\n", sum);
printf("Array size: %zu\n", sizeof(numbers) / sizeof(numbers[0]));
return 0;
}66 Array size: 5
C bounds checking bhi nahi karta: array ke end ke aage read ya write karna koi error raise nahi karta — ye bas jo bhi memory wahan hai use read ya corrupt kar deta hai. Ye undefined behavior hai, aur C ke sabse sharp edges mein se ek hai.
Aage: pointers — wo ek idea jis par is course ka baaki hissa bana hai.
Practice exercise
Ek int numbers[4] = {4, 8, 15, 16} diya gaya hai, ek for loop se iske saare elements sum karo aur total print karo.