Suche senden
Hochladen
u.cs101 "Алгоритм ба програмчлал" Лекц №6
•
4 gefällt mir
•
4,154 views
Khuder Altangerel
Folgen
Си хэлний заагч төрөл
Weniger lesen
Mehr lesen
Software
Melden
Teilen
Melden
Teilen
1 von 61
Empfohlen
U.cs101 алгоритм программчлал-12
U.cs101 алгоритм программчлал-12
Badral Khurelbaatar
hicheel2
hicheel2
Turuu Tsogt
u.cs101 "Алгоритм ба програмчлал" Лекц №5
u.cs101 "Алгоритм ба програмчлал" Лекц №5
Khuder Altangerel
U.cs101 алгоритм программчлал-10
U.cs101 алгоритм программчлал-10
Badral Khurelbaatar
Programchlaliin c hel
Programchlaliin c hel
E-Gazarchin Online University
u.cs101 "Алгоритм ба програмчлал" Лекц №2
u.cs101 "Алгоритм ба програмчлал" Лекц №2
Khuder Altangerel
U.cs101 алгоритм программчлал-2
U.cs101 алгоритм программчлал-2
Badral Khurelbaatar
U.cs101 алгоритм программчлал-1(1)
U.cs101 алгоритм программчлал-1(1)
Badral Khurelbaatar
Empfohlen
U.cs101 алгоритм программчлал-12
U.cs101 алгоритм программчлал-12
Badral Khurelbaatar
hicheel2
hicheel2
Turuu Tsogt
u.cs101 "Алгоритм ба програмчлал" Лекц №5
u.cs101 "Алгоритм ба програмчлал" Лекц №5
Khuder Altangerel
U.cs101 алгоритм программчлал-10
U.cs101 алгоритм программчлал-10
Badral Khurelbaatar
Programchlaliin c hel
Programchlaliin c hel
E-Gazarchin Online University
u.cs101 "Алгоритм ба програмчлал" Лекц №2
u.cs101 "Алгоритм ба програмчлал" Лекц №2
Khuder Altangerel
U.cs101 алгоритм программчлал-2
U.cs101 алгоритм программчлал-2
Badral Khurelbaatar
U.cs101 алгоритм программчлал-1(1)
U.cs101 алгоритм программчлал-1(1)
Badral Khurelbaatar
C cons
C cons
Onon Tuul
U.cs101 алгоритм программчлал-13
U.cs101 алгоритм программчлал-13
Badral Khurelbaatar
Лекц №1
Лекц №1
Amarsaikhan Tuvshinbayar
C++
C++
Алдарболд Э.
Лекц №2
Лекц №2
Amarsaikhan Tuvshinbayar
си хэлний хичээлүүд 11 р анги
си хэлний хичээлүүд 11 р анги
enhsaran_tsahim
U.cs101 лаборатори 6
U.cs101 лаборатори 6
Ganbaatar ch
Давталттай алгоритмын бодлогууд
Давталттай алгоритмын бодлогууд
Баярсайхан Л
u.cs101 "Алгоритм ба програмчлал" Лекц №1
u.cs101 "Алгоритм ба програмчлал" Лекц №1
Khuder Altangerel
Лекц №4
Лекц №4
Amarsaikhan Tuvshinbayar
Lec3 c++operator
Lec3 c++operator
Turuu Tsogt
Assembler helnii command
Assembler helnii command
E-Gazarchin Online University
Лекц 3 (Давталт)
Лекц 3 (Давталт)
Мөнхбаярын Цэцэнцэнгэл
Лекц 10: (Рекурс)
Лекц 10: (Рекурс)
Мөнхбаярын Цэцэнцэнгэл
Лекц 9(Заагч)
Лекц 9(Заагч)
Мөнхбаярын Цэцэнцэнгэл
2
2
Nergui Batjargal
U.cs101 алгоритм программчлал-7
U.cs101 алгоритм программчлал-7
Badral Khurelbaatar
9.эрэмбэлэлтийн аргууд
9.эрэмбэлэлтийн аргууд
Bayalagmaa Davaanyam
Өгөгдлийн бүтэц 10
Өгөгдлийн бүтэц 10
International Ulaanbaatar University
It101 1
It101 1
Nergui Batjargal
u.cs101 "Алгоритм ба програмчлал" Лекц №4
u.cs101 "Алгоритм ба програмчлал" Лекц №4
Khuder Altangerel
u.cs101 "Алгоритм ба програмчлал" Лекц №3
u.cs101 "Алгоритм ба програмчлал" Лекц №3
Khuder Altangerel
Weitere ähnliche Inhalte
Was ist angesagt?
C cons
C cons
Onon Tuul
U.cs101 алгоритм программчлал-13
U.cs101 алгоритм программчлал-13
Badral Khurelbaatar
Лекц №1
Лекц №1
Amarsaikhan Tuvshinbayar
C++
C++
Алдарболд Э.
Лекц №2
Лекц №2
Amarsaikhan Tuvshinbayar
си хэлний хичээлүүд 11 р анги
си хэлний хичээлүүд 11 р анги
enhsaran_tsahim
U.cs101 лаборатори 6
U.cs101 лаборатори 6
Ganbaatar ch
Давталттай алгоритмын бодлогууд
Давталттай алгоритмын бодлогууд
Баярсайхан Л
u.cs101 "Алгоритм ба програмчлал" Лекц №1
u.cs101 "Алгоритм ба програмчлал" Лекц №1
Khuder Altangerel
Лекц №4
Лекц №4
Amarsaikhan Tuvshinbayar
Lec3 c++operator
Lec3 c++operator
Turuu Tsogt
Assembler helnii command
Assembler helnii command
E-Gazarchin Online University
Лекц 3 (Давталт)
Лекц 3 (Давталт)
Мөнхбаярын Цэцэнцэнгэл
Лекц 10: (Рекурс)
Лекц 10: (Рекурс)
Мөнхбаярын Цэцэнцэнгэл
Лекц 9(Заагч)
Лекц 9(Заагч)
Мөнхбаярын Цэцэнцэнгэл
2
2
Nergui Batjargal
U.cs101 алгоритм программчлал-7
U.cs101 алгоритм программчлал-7
Badral Khurelbaatar
9.эрэмбэлэлтийн аргууд
9.эрэмбэлэлтийн аргууд
Bayalagmaa Davaanyam
Өгөгдлийн бүтэц 10
Өгөгдлийн бүтэц 10
International Ulaanbaatar University
It101 1
It101 1
Nergui Batjargal
Was ist angesagt?
(20)
C cons
C cons
U.cs101 алгоритм программчлал-13
U.cs101 алгоритм программчлал-13
Лекц №1
Лекц №1
C++
C++
Лекц №2
Лекц №2
си хэлний хичээлүүд 11 р анги
си хэлний хичээлүүд 11 р анги
U.cs101 лаборатори 6
U.cs101 лаборатори 6
Давталттай алгоритмын бодлогууд
Давталттай алгоритмын бодлогууд
u.cs101 "Алгоритм ба програмчлал" Лекц №1
u.cs101 "Алгоритм ба програмчлал" Лекц №1
Лекц №4
Лекц №4
Lec3 c++operator
Lec3 c++operator
Assembler helnii command
Assembler helnii command
Лекц 3 (Давталт)
Лекц 3 (Давталт)
Лекц 10: (Рекурс)
Лекц 10: (Рекурс)
Лекц 9(Заагч)
Лекц 9(Заагч)
2
2
U.cs101 алгоритм программчлал-7
U.cs101 алгоритм программчлал-7
9.эрэмбэлэлтийн аргууд
9.эрэмбэлэлтийн аргууд
Өгөгдлийн бүтэц 10
Өгөгдлийн бүтэц 10
It101 1
It101 1
Andere mochten auch
u.cs101 "Алгоритм ба програмчлал" Лекц №4
u.cs101 "Алгоритм ба програмчлал" Лекц №4
Khuder Altangerel
u.cs101 "Алгоритм ба програмчлал" Лекц №3
u.cs101 "Алгоритм ба програмчлал" Лекц №3
Khuder Altangerel
u.cs101 "Алгоритм ба програмчлал" Лекц №7
u.cs101 "Алгоритм ба програмчлал" Лекц №7
Khuder Altangerel
Hmm Tutorial
Hmm Tutorial
jefftang
IOI 2016 "Молекул" бодлогын бодолт
IOI 2016 "Молекул" бодлогын бодолт
Khuder Altangerel
Java lecture4
Java lecture4
Onobold Odgerel
Lecture4
Lecture4
orgil
Лекц 11: (Рекурс, Ханойн цамхаг)
Лекц 11: (Рекурс, Ханойн цамхаг)
Мөнхбаярын Цэцэнцэнгэл
Лекц 1 (Алгоритм Програмчлал - 1)
Лекц 1 (Алгоритм Програмчлал - 1)
Мөнхбаярын Цэцэнцэнгэл
лекц №6
лекц №6
Onobold Odgerel
Java lecture4
Java lecture4
Onobold Odgerel
Java lecture5
Java lecture5
Onobold Odgerel
Цалингийн бүртгэлийн систем
Цалингийн бүртгэлийн систем
Altangerel Bilguun
Dp Presentation
Dp Presentation
khnks
Java lecture3
Java lecture3
Onobold Odgerel
Жава хэлний сурах бичиг Java helnii surah bichig Mongol
Жава хэлний сурах бичиг Java helnii surah bichig Mongol
Gantulga Dashdondov
бөөний төвийн бараа бүртгэлийн систем
бөөний төвийн бараа бүртгэлийн систем
treeee1
Datastructure algoritm
Datastructure algoritm
Nergui Batjargal
Дэлгүүрийн кассын систем
Дэлгүүрийн кассын систем
Altangerel Bilguun
мэдээллийн нууцлалт, хамгаалалт ба хандалт
мэдээллийн нууцлалт, хамгаалалт ба хандалт
Tsetsenkhuu Otgonbayar
Andere mochten auch
(20)
u.cs101 "Алгоритм ба програмчлал" Лекц №4
u.cs101 "Алгоритм ба програмчлал" Лекц №4
u.cs101 "Алгоритм ба програмчлал" Лекц №3
u.cs101 "Алгоритм ба програмчлал" Лекц №3
u.cs101 "Алгоритм ба програмчлал" Лекц №7
u.cs101 "Алгоритм ба програмчлал" Лекц №7
Hmm Tutorial
Hmm Tutorial
IOI 2016 "Молекул" бодлогын бодолт
IOI 2016 "Молекул" бодлогын бодолт
Java lecture4
Java lecture4
Lecture4
Lecture4
Лекц 11: (Рекурс, Ханойн цамхаг)
Лекц 11: (Рекурс, Ханойн цамхаг)
Лекц 1 (Алгоритм Програмчлал - 1)
Лекц 1 (Алгоритм Програмчлал - 1)
лекц №6
лекц №6
Java lecture4
Java lecture4
Java lecture5
Java lecture5
Цалингийн бүртгэлийн систем
Цалингийн бүртгэлийн систем
Dp Presentation
Dp Presentation
Java lecture3
Java lecture3
Жава хэлний сурах бичиг Java helnii surah bichig Mongol
Жава хэлний сурах бичиг Java helnii surah bichig Mongol
бөөний төвийн бараа бүртгэлийн систем
бөөний төвийн бараа бүртгэлийн систем
Datastructure algoritm
Datastructure algoritm
Дэлгүүрийн кассын систем
Дэлгүүрийн кассын систем
мэдээллийн нууцлалт, хамгаалалт ба хандалт
мэдээллийн нууцлалт, хамгаалалт ба хандалт
Mehr von Khuder Altangerel
Марковын далд загвар
Марковын далд загвар
Khuder Altangerel
Lec08 readerwriter
Lec08 readerwriter
Khuder Altangerel
Lec05 cooperating (1)
Lec05 cooperating (1)
Khuder Altangerel
Lec16 io
Lec16 io
Khuder Altangerel
Lec07 exclusion
Lec07 exclusion
Khuder Altangerel
Lec15 pagereplace last
Lec15 pagereplace last
Khuder Altangerel
Lec14 demandpage
Lec14 demandpage
Khuder Altangerel
Lec13 cachetlb
Lec13 cachetlb
Khuder Altangerel
Lec12 translation
Lec12 translation
Khuder Altangerel
Lec11 protection
Lec11 protection
Khuder Altangerel
Lec10 scheduling
Lec10 scheduling
Khuder Altangerel
Lec09 deadlock
Lec09 deadlock
Khuder Altangerel
Lec06 synchronization
Lec06 synchronization
Khuder Altangerel
Lec04 threads
Lec04 threads
Khuder Altangerel
Lec03 concurrency (2)
Lec03 concurrency (2)
Khuder Altangerel
Lec02 structures (2)
Lec02 structures (2)
Khuder Altangerel
Lec01 intro (1) (2)
Lec01 intro (1) (2)
Khuder Altangerel
МХТ-ийн мэргэжилд шаардагдах гадаад хэлний чадвар
МХТ-ийн мэргэжилд шаардагдах гадаад хэлний чадвар
Khuder Altangerel
Mehr von Khuder Altangerel
(18)
Марковын далд загвар
Марковын далд загвар
Lec08 readerwriter
Lec08 readerwriter
Lec05 cooperating (1)
Lec05 cooperating (1)
Lec16 io
Lec16 io
Lec07 exclusion
Lec07 exclusion
Lec15 pagereplace last
Lec15 pagereplace last
Lec14 demandpage
Lec14 demandpage
Lec13 cachetlb
Lec13 cachetlb
Lec12 translation
Lec12 translation
Lec11 protection
Lec11 protection
Lec10 scheduling
Lec10 scheduling
Lec09 deadlock
Lec09 deadlock
Lec06 synchronization
Lec06 synchronization
Lec04 threads
Lec04 threads
Lec03 concurrency (2)
Lec03 concurrency (2)
Lec02 structures (2)
Lec02 structures (2)
Lec01 intro (1) (2)
Lec01 intro (1) (2)
МХТ-ийн мэргэжилд шаардагдах гадаад хэлний чадвар
МХТ-ийн мэргэжилд шаардагдах гадаад хэлний чадвар
u.cs101 "Алгоритм ба програмчлал" Лекц №6
1.
Лекц № 6 Си-гийн
заагч А. Хүдэр
2.
Заагч хувьсагчийг
зарлах ба анхны утга олгох Заагч дээрх үйлдлүүд Аргументыг функц руу хаягаар дамжуулах const тодорхойлогчийг заагч дээр ашиглах Хаягаар дуудах арга хэрэглэсэн бөмбөлгөн эрэмбэлэлт sizeof оператор Заагчтай илэрхийлэл ба заагчийн арифметик Заагч ба хүснэгт Заагч төрлийн хүснэгт Функцийн заагч 212/16/2015Vanderbilt university
3.
Утга нь
санах ойн хаяг байна Энгийн хувьсагчид ямар нэг утга хадгалдаг (шууд хаяглалт) Заагч нь ямар нэг утга агуулж байгаа хувьсагчийн хаягийг агуулна (шууд бус хаяглалт) 312/16/2015Vanderbilt university
4.
Заагч хувьсагчид
* - ыг хэрэглэнэ int *myPtr; int төрлийн заагчийг тодорхойлно (int * төрлийн заагч) Олон заагч зарлах бол хувьсагч бүрийн өмнө * -ыг бичнэ int *myPtr1, *myPtr2; Ямар ч төрлийн заагч зарлаж болно Заагчийн анхны утгаар 0, NULL эсвэл ямар нэг хаяг өгөх ◦ 0 эсвэл NULL – юуг ч заахгүй ◦ 0 нь заагчид олгож болох цорын ганц бүхэл утга юм ◦ Заагчид анхны утгыг нь 0 гэж олгох нь NULL -ыг олгохтой ижил боловч NULL –ыг ихэвчлэн хэрэглэнэ ◦ NULL -ыг <stddef.h>, <stdio.h> гэх мэт хэд хэдэн толгой файлд тодорхойлсон байдаг 412/16/2015Vanderbilt university
5.
Заагч хувьсагчийг
зарлах ба анхны утга олгох Заагч дээрх үйлдлүүд Аргументыг функц руу хаягаар дамжуулах const тодорхойлогчийг заагч дээр ашиглах Хаягаар дуудах арга хэрэглэсэн бөмбөлгөн эрэмбэлэлт sizeof оператор Заагчтай илэрхийлэл ба заагчийн арифметик Заагч ба хүснэгт Заагч төрлийн хүснэгт Функцийн заагч 512/16/2015Vanderbilt university
6.
& (хаяг
авах үйлдэл) ◦ Операндынхаа хаягийг буцаана int y = 5; int *yPtr; yPtr = &y; /* yPtr заагч y – гийн хаягийг авна */ /* yPtr заагч y-г заана*/ 612/16/2015Vanderbilt university
7.
* (шууд
бус хаяглалт/хаяглах үйлдэл) ◦ Операндынхаа зааж байгаа зүйлийн өөр нэр/зохиомол нэрийг буцаана ◦ *yptr нь y-ийг буцаана (yptr нь y-г зааж байгаа учир) ◦ *-ыг утга олгоход хэрэглэж болно Объектийн өөр нэрийг буцаана *yptr = 7; /* changes y to 7 */ Хаяглалтанд хэрэглэж байгаа заагч нь (*-ын операнд) lvalue байх ѐстой (тогтмол байж болохгүй). * ба & нь эсрэг үйлдлүүд юм Бие биенийгээ устгана 712/16/2015Vanderbilt university
8.
Хэрэв aPtr нь
a-г зааж байгаа бол &a болон aPtr нь ижил утга юм a болон *aPtr нь ижил &*aPtr болон *&aPtr нь ижил утгатай 812/16/2015Vanderbilt university
9.
912/16/2015Vanderbilt university
10.
1012/16/2015Vanderbilt university
11.
Заагч хувьсагчийг
зарлах ба анхны утга олгох Заагч дээрх үйлдлүүд Аргументыг функц руу хаягаар дамжуулах const тодорхойлогчийг заагч дээр ашиглах Хаягаар дуудах арга хэрэглэсэн бөмбөлгөн эрэмбэлэлт sizeof оператор Заагчтай илэрхийлэл ба заагчийн арифметик Заагч ба хүснэгт Заагч төрлийн хүснэгт Функцийн заагч 1112/16/2015Vanderbilt university
12.
Заагч аргумент
ашиглан хаягаар дуудах ◦ Аргументийн хаягийг & оператор ашиглан дамжуулна ◦ Санах ой дахь бодит байрлал дээр өөрчлөлт хийх боломж олгоно ◦ Хүснэгтийг дамжуулахад & үйлдлийг ашиглахгүй, учир нь хүснэгтийн нэр өөрөө заагч байдаг * оператор ◦ Функцийн дотор хувьсагчийн өөр нэр ашиглахад хэрэглэгдэнэ void timestwo( int *number ) { *number = 2 * ( *number ); } ◦ *number нь дамжуулагдсан хувьсагчийн өөр нэр байдлаар ашиглагдана 1212/16/2015Vanderbilt university
13.
1312/16/2015Vanderbilt university
14.
14 Заагч аргумент авах
функцийн загвар cubeByReference функц руу заагч хувьсагчийн утга байж болох хаяг дамжуулсан Энэ програмд *nPtr нь number – тэй адил тул энэ үйлдэл нь number хувьсагчийн утгыг өөрчилнө 12/16/2015Vanderbilt university
15.
1512/16/2015Vanderbilt university
16.
1612/16/2015Vanderbilt university
17.
Заагч хувьсагчийг
зарлах ба анхны утга олгох Заагч дээрх үйлдлүүд Аргументыг функц руу хаягаар дамжуулах const тодорхойлогчийг заагч дээр ашиглах Хаягаар дуудах арга хэрэглэсэн бөмбөлгөн эрэмбэлэлт sizeof оператор Заагчтай илэрхийлэл ба заагчийн арифметик Заагч ба хүснэгт Заагч төрлийн хүснэгт Функцийн заагч 1712/16/2015Vanderbilt university
18.
const тодорхойлогч ◦
Хувьсагчийн утга өөрчлөгдөхгүй ◦ Хэрэв функц ямар нэг хувьсагчаа өөрчлөх хэрэггүй бол const тодорхойлогчийг хэрэглэнэ ◦ const хувьсагчийг өөрчлөх гэж оролдвол алдаа гарна const заагчид ◦ Санах ойн тогтмол байрлал руу заана ◦ Тодорхойлох үедээ анхны утгыг нь олгох ѐстой ◦ const int *myPtr = &x; const int төрлийн энгийн заагч ◦ int *const myPtr = &x; int *const төрөл нь int төрлийн тогтмол заагч юм x нь өөрчлөгдөж болох боловч myPtr өөрчлөгдөхгүй ◦ const int *const Ptr = &x; const int төрлийн const заагч 1812/16/2015Vanderbilt university
19.
19 sPtr болон *sPtr
хоѐулаа тогтмол биш 12/16/2015Vanderbilt university
20.
20 sPtr болон *sPtr-ын
утгыг converttoUppercase функц өөрчилнө 12/16/2015Vanderbilt university
21.
21 sPtr заагчийг өөрчилж
болохгүй боловч зааж байгаа өгөгдөл *sPtr-ийг өөрчилж болно 12/16/2015Vanderbilt university
22.
22 sPtr-ийг printCharacters функц өөрчилж
байна 12/16/2015Vanderbilt university
23.
23 xPtr заагч өөрчлөгдөнө
харин зааж байгаа өгөгдөл *xPtr нь өөрчлөгдөхгүй Хөрвүүлэлтийн алдаа! *xPtr нь const тодорхойлогчтой байхад утгыг нь өөрчлөх гэвэл алдаа гарна 12/16/2015Vanderbilt university
24.
24 ptr заагч өөрчлөгдөхгүй
боловч зааж байгаа *ptr өгөгдөл тогтмол биш Хөрвүүлэлтийн алдаа! 12/16/2015Vanderbilt university
25.
25 Заагч sPtr болон
өгөгдөл *sPtr хоѐулаа тогтмол Хөрвүүлэлтийн алдаа! 12/16/2015Vanderbilt university
26.
Заагч хувьсагчийг
зарлах ба анхны утга олгох Заагч дээрх үйлдлүүд Аргументыг функц руу хаягаар дамжуулах const тодорхойлогчийг заагч дээр ашиглах Хаягаар дуудах арга хэрэглэсэн бөмбөлгөн эрэмбэлэлт sizeof оператор Заагчтай илэрхийлэл ба заагчийн арифметик Заагч ба хүснэгт Заагч төрлийн хүснэгт Функцийн заагч 2612/16/2015Vanderbilt university
27.
Заагч ашиглан
бөмбөлгөн эрэмбэлэлтийг хэрэгжүүлэх ◦ Хоѐр элементийн байрыг солих ◦ swap функц хүснэгтийн элементүүдийн хаягийг хүлээж авна (& - г хэрэглэн) ◦ Заагч болон * операторыг хэрэглэн swap функц хүснэгтийн элементүүдийг солино Псевдокод Хүснэгтэд анхны утга олгох өгөгдлийг анхны хэлбэрээр нь хэвлэх bubblesort функцийг дуудах эрэмбэлэгдсэн хүснэгтийг хэвлэх bubblesort функцийг тодорхойлох 2712/16/2015Vanderbilt university
28.
2812/16/2015Vanderbilt university
29.
2912/16/2015Vanderbilt university
30.
30 swap функц нь
хоѐр заагчийн зааж буй int төрлийн утгуудын байрыг солино 12/16/2015Vanderbilt university
31.
Заагч хувьсагчийг
зарлах ба анхны утга олгох Заагч дээрх үйлдлүүд Аргументыг функц руу хаягаар дамжуулах const тодорхойлогчийг заагч дээр ашиглах Хаягаар дуудах арга хэрэглэсэн бөмбөлгөн эрэмбэлэлт sizeof оператор Заагчтай илэрхийлэл ба заагчийн арифметик Заагч ба хүснэгт Заагч төрлийн хүснэгт Функцийн заагч 3112/16/2015Vanderbilt university
32.
sizeof ◦ Операндын
хэмжээг байтаар буцаана ◦ Хүснэгтийн хувьд: нэг элементийн хэмжээ х элементийн тоо ◦ Хэрэв sizeof(int) нь 4 байт бол int myArray[ 10 ]; printf( "%d", sizeof( myArray ) ); 40 гэж хэвлэнэ sizeof-ыг доорх зүйлд ашиглаж болно ◦ Хувьсагчийн нэр ◦ Төрлийн нэр ◦ Тогтмолын нэр 3212/16/2015Vanderbilt university
33.
33 float нь санах
ойд 4 байт эзэлдэг бол 20 ширхэг float нь 80 байт болно 12/16/2015Vanderbilt university
34.
3412/16/2015Vanderbilt university
35.
3512/16/2015Vanderbilt university
36.
Заагч хувьсагчийг
зарлах ба анхны утга олгох Заагч дээрх үйлдлүүд Аргументыг функц руу хаягаар дамжуулах const тодорхойлогчийг заагч дээр ашиглах Хаягаар дуудах арга хэрэглэсэн бөмбөлгөн эрэмбэлэлт sizeof оператор Заагчтай илэрхийлэл ба заагчийн арифметик Заагч ба хүснэгт Заагч төрлийн хүснэгт Функцийн заагч 3612/16/2015Vanderbilt university
37.
Заагч дээр
арифметик үйлдэл хийж болно ◦ Заагчийг нэмэгдүүлэх/хорогдуулах (++ эсвэл --) ◦ Заагч дээр бүхэл тоо нэмэх (+ эсвэл +=, - эсвэл -=) ◦ Заагчуудыг бие биенээс нь хасч болно ◦ Эдгээр үйлдлүүдийг хүснэгт дээр хийх үед л утгатай байна 3712/16/2015Vanderbilt university
38.
Бүхэл тоон
төрөл нь 4 байт байдаг машин дээрх 5 элементтэй хүснэгт ◦ vPtr эхний элемент v[0] рүү заана 3000 гэсэн байрлал руу (vPtr=3000) ◦ vPtr+=2; vPtr-ийг 3008 утгатай болгоно vPtr нь v[2] руу заах (2-оор нэмэгдсэний дараа) ба, машин 4 байтын int төрөлтэй тул зааж буй хаяг нь 3008 болно. 38v хүснэгт ба түүн рүү заах vPtr заагч 12/16/2015Vanderbilt university
39.
3912/16/2015Vanderbilt university
40.
Заагчийг хасах ◦
Нэг заагчаас нөгөөг хүртлэх элементийн тоог буцаана. Хэрэв vPtr2 = v[2]; vPtr0 = v[0]; ◦ vPtr2 – vPtr0 нь 2 болно Заагчийг харьцуулах ◦ Аль заагч нь илүү их дугаартай хүснэгтийн элемент зааж байгааг олох ◦ Заагчийн утга 0-тэй тэнцүү эсэхийг шалгах 4012/16/2015Vanderbilt university
41.
Ижил төрлийн
заагчдын хооронд утга олгох үйлдэл хэрэглэж болно ◦ Хэрэв төрөл нь ялгаатай бол төрөл хувиргах үйлдэл хэрэглэнэ ◦ Онцгой тохиолдол: void төрлийн заагч (void * төрөл) Ерөнхий заагч, ямар ч төрлийг зааж чадна void заагч руу шилжүүлэхэд төрөл хувиргалт хэрэггүй void төрлийн заагч дээр шууд бус хаяглалтыг хийж болохгүй 4112/16/2015Vanderbilt university
42.
Заагч хувьсагчийг
зарлах ба анхны утга олгох Заагч дээрх үйлдлүүд Аргументыг функц руу хаягаар дамжуулах const тодорхойлогчийг заагч дээр ашиглах Хаягаар дуудах арга хэрэглэсэн бөмбөлгөн эрэмбэлэлт sizeof оператор Заагчтай илэрхийлэл ба заагчийн арифметик Заагч ба хүснэгт Заагч төрлийн хүснэгт Функцийн заагч 4212/16/2015Vanderbilt university
43.
Заагч ба
хүснэгт нь нягт холбоотой ◦ Хүснэгтийн нэр нь тогтмол заагч юм ◦ Заагчаар хүснэгтийн индексийн үйлдлийг хийж болно b[5] хүснэгт ба bPtr заагч зарлая ◦ Тэдгээрийг ижил болгохын тулд дараах үйлдлийг хийнэ bPtr = b; Хүснэгтийн нэр (b) нь b[5] хүснэгтийн эхний элементийн хаяг юм bPtr = &b[0]; bPtr заагчид b хүснэгтийн эхний элементийн хаягийг олгоно 4312/16/2015Vanderbilt university
44.
b[3] элемент ◦
*(bPtr+3) гэж хандаж болно Шилжилтийн утга n-ийн хувьд заагч/шилжилтийн тэмдэглэгээ гэж нэрлэгддэг ◦ bPtr[3] гэж хандаж болно Заагч/индексийн тэмдэглэгээ гэж нэрлэгддэг bPtr[3] нь b[3] –тай адил ◦ Хүснэгт дээрээ заагчийн арифметикийг хэрэглэн *(b+3) гэж хандаж болно 4412/16/2015Vanderbilt university
45.
45 Хүснэгтийн индексийн тэмдэглэгээ Заагч/шилжилтийн тэмдэглэгээ 12/16/2015Vanderbilt university
46.
46 Заагчийн индекс тэмдэглэгээ Заагчийн
шилжилттэй тэмдэглэгээ 12/16/2015Vanderbilt university
47.
4712/16/2015Vanderbilt university
48.
4812/16/2015Vanderbilt university
49.
49 for давталтын нөхцөл
дотор үйлдэл гүйцэтгэж байна 12/16/2015Vanderbilt university
50.
Заагч хувьсагчийг
зарлах ба анхны утга олгох Заагч дээрх үйлдлүүд Аргументыг функц руу хаягаар дамжуулах const тодорхойлогчийг заагч дээр ашиглах Хаягаар дуудах арга хэрэглэсэн бөмбөлгөн эрэмбэлэлт sizeof оператор Заагчтай илэрхийлэл ба заагчийн арифметик Заагч ба хүснэгт Заагч төрлийн хүснэгт Функцийн заагч 5012/16/2015Vanderbilt university
51.
Хүснэгт нь
заагчуудыг агуулж болно Жишээ: Тэмдэгт мөр төрлийн хүснэгт ◦ char *suit[ 4 ] = { "Hearts", "Diamonds”, "Clubs", "Spades" }; ◦ Тэмдэгт мөр нь эхний үсгийнхээ заагч юм ◦ char * - suit-ийн элемент бүр нь char төрлийн заагч юм ◦ Тэмдэгт мөрүүд нь suit хүснэгтэд хадгалагдахгүй ба тэнд тэдний зөвхөн заагчдыг хадгална ◦ suit хүснэгт нь тогтмол хэмжээтэй ба харин тэмдэгт мөрүүд нь ямар ч хэмжээтэй байж болно 5112/16/2015Vanderbilt university
52.
5212/16/2015Vanderbilt university
53.
Заагч хувьсагчийг
зарлах ба анхны утга олгох Заагч дээрх үйлдлүүд Аргументыг функц руу хаягаар дамжуулах const тодорхойлогчийг заагч дээр ашиглах Хаягаар дуудах арга хэрэглэсэн бөмбөлгөн эрэмбэлэлт sizeof оператор Заагчтай илэрхийлэл ба заагчийн арифметик Заагч ба хүснэгт Заагч төрлийн хүснэгт Функцийн заагч 5312/16/2015Vanderbilt university
54.
Функцийн заагч ◦
Функцийн хаягийг заана ◦ Хүснэгтийн нэр эхний элементийнхээ хаяг байдагтай адил ◦ Функцийн нэр нь функцийг тодорхойлсон кодын эхлэлийн хаяг байна Функцийн заагч дээр дараах үйлдлүүдийг хийж болно ◦ Функц руу дамжуулах ◦ Хүснэгтэнд хадгалах ◦ Өөр функцийн заагчид олгох 5412/16/2015Vanderbilt university
55.
Жишээ: bubblesort ◦
bubble функц аргументаар функцийн заагч авна bubble тэр туслах функцийг дуудна энэ нь өсөх эсвэл буурахаар эрэмбэлэхийг тодорхойлно ◦ bubble функцийн аргумент болох функцийн заагч: int ( *compare )( int a, int b ); нь bubble-д хоѐр бүхэл тоон аргументтай, бүхэл тоо буцаадаг функц орж ирэхийг заана ◦ Хэрэв хаалтуудыг орхивол: int *compare( int a, int b ); хоѐр int аргументтай, int-ийн заагч буцаадаг функц гэж тодорхойлогдоно 5512/16/2015Vanderbilt university
56.
56 bubble функц аргументаараа функцийн заагч
авч байна 12/16/2015Vanderbilt university
57.
57 Хэрэглэгчийн сонголтоос хамааран bubble
функц ascending эсвэл descending функцийг хүснэгт эрэмбэлэхэд ашиглаж байна 12/16/2015Vanderbilt university
58.
58 Програм юуг эрэмбэлэгдээгүй байна
гэж үзэх нь bubble руу ямар функцийн заагч дамжуулагдсанаас хамаарна 12/16/2015Vanderbilt university
59.
59 bubble функц руу
ascending функцийг дамжуулахад програмын энэ хэсэгт ирнэ bubble функц руу descending функцийг дамжуулахад програмын энэ хэсэгт ирнэ 12/16/2015Vanderbilt university
60.
6012/16/2015Vanderbilt university
61.
Заагч: өгөгдлийн
төрөл * заагч хувьсагчийн нэр (%p, арван зургаатын бүхэл тоо) Утгаар дуудах (өөрчлөхгүй) ба хаягаар дуудах (өөрчилнө) const тодорхойлогч нь хувьсагчийг өөрчлөхгүй байхыг заана (дөрвөн хувилбар) sizeof нь хэмжээг байтаар тодорхойлно Заагчийн хүснэгт Функцийн заагч: функцийн нэр нь хаяг байдаг 6112/16/2015Vanderbilt university