Та заагч хэвлэж чадах уу?
Та заагч хэвлэж чадах уу?

Видео: Та заагч хэвлэж чадах уу?

Видео: Та заагч хэвлэж чадах уу?
Видео: НЕ ЗОВИ ДЕМОНОВ НОЧЬЮ ИЛИ ЭТО КОНЧИТСЯ ТЕМ ЧТО... 2024, May
Anonim

Заагч хэвлэх . Та заагч хэвлэж болно %p формат тодорхойлогчтой printf ашиглан утгыг авна. Хийх тиймээс, Та хөрвүүлэх ёстой заагч эхлээд гипс ашиглан void * гэж бичнэ үү (void-г доороос үзнэ үү * заагч ), гэхдээ өөр өөр төлөөллүүд байдаггүй машинууд дээр заагч төрөл, энэ нь шаардлагагүй байж болно.

Бас асуулт бол би яаж printf хаягаа хэвлэх вэ?

руу хэвлэх санах ой хаяг , бид ашиглах '%p' формат тодорхойлогч in C. To хэвлэх нь хаяг а хувьсагч, бид ашиглах "%p" тодорхойлогч in Си програмчлалын хэл. авах хоёр арга бий хаяг хувьсагчийн: Ашиглах замаар " хаяг "(&) оператор.

Нэмж хэлэхэд, заагч дээр нэмэхэд юу болох вэ? А заагч нэмэх гэдэг нь дараагийн үзүүртэй элемент рүү шилжих гэсэн үг юм. Тиймээс хаяг нь үзүүртэй элементийн хэмжээгээр нэмэгддэг. хаяг нь заагч T нь заасан төрөл байх үед sizeof(T)-аар нэмэгдэнэ. Тэгэхээр int-ийн хувьд the заагч sizeof(int) -аар нэмэгдэнэ.

Үүний нэгэн адил хүмүүс заагчийн утгыг яаж олох вэ гэж асуудаг.

1 Хариулт. руу авах нь үнэ цэнэ -ийн а заагч , зүгээр л лавлагааг хас заагч . int *ptr; int үнэ цэнэ ; *ptr = 9; үнэ цэнэ = *ptr; үнэ цэнэ одоо 9.

Заагч дээр бүхэл тоо нэмж болох уу?

Заагч арифметик ба массив. Нэмэх а бүхэл тоо a заагч эсвэл хасах бүхэл тоо -аас а заагч . p+n-ийн нөлөө, энд p a заагч ба n нь a бүхэл тоо Энэ нь хаягийг p дээр зааж буй хэмжээнээс n дахин үржүүлсэнтэй тэнцэх хаягийг тооцоолох явдал юм (ийм учраас int * заагч болон тэмдэгт * заагч ижил биш).

Зөвлөмж болгож буй: