Ի՞նչ կպտվի էկրանին, եթե
short տիպը զբաղեցնում է 2 բայթ, իսկ int տիպը՝ 4։#include <iostream> int main() { short arr[] = {1, 2, 3, 4, 5}; int* p = (int*)arr; *p = 0; for (int i = 0; i < 5; i++) { std::cout << arr[i] << " "; } }
🚩Լուծում
arr զանգվածի ամեն էլեմենտը զբաղեցնում է 2 բայթ։ p ցուցիչը int տիպի է, այսինքն ցույց է տալիս 4 բայթ հիշողության վրա, ինչը զանգվածի առաջին երկու էլեմենտների զբաղեցրաց տիրույթն է։ *p = 0; գործողությունից հետո, զանգվածի առաջին երկու էլեմենտերի արժեքները կլինեն 0։