Turbo C++ 3.0 (Турбо Си++) орчинтой товч танилцах

Сэдвүүд:

·          Системийг ачаалах

·          Үндсэн цонх. Ажлын талбар

·          Файл хадгалах

·          Зарим нэг тохиргоо

·          Хөрвүүлэх

·          Холбох

·          Ажиллуулах

·          Хөрвүүлэлтийн алдаа (Error)

·          Хөрвүүлэлтийн сануулга (Warning)

·          Шуурхай хандалт

·          Сэдэвчилсэн хайлт

·          Санамж

Системийг ачаалах

Манай сургуулийн компьютерын лабораторийн (анги №107) машинуудад Turbo C++ орчин C:\TC гэсэн хавтас үүсгэн суусан байх ёстой. Системийг идэвхжүүлэхийн тулд tc.exe файлыг олж ачаалах хэрэгтэй. Энэ файл нь C:\TC\BIN гэсэн хавтсанд байрлана:

Заримдаа Start|Search|For Files or Folders… үйлдлээр хайлтын цонх гаргаж ирээд tc.exe гэж бичин хайлгаж болно:

Файлыг олсны дараа түүнийг сонгож хулганы товчийг 2 удаа товших буюу гарын ENTER товчийг дарснаар Turbo C++ ачаалагдана. Ингэхэд дараах цонх дэлгэцэнд гарч ирнэ:

Үндсэн цонх. Ажлын талбар

Энэ цонх бол бидний ажиллах үндсэн орчин юм. Ер нь бол энэ цонх дэлгэцийг бүхэлд нь эзлэн гарч ирдэг. Хэрэв тэгээгүй бол гарын ALT+ENTER товчны хослолыг даран “томруулж” болно. Харин цонх дэлгэцийг бүхэлд нь эзэлсэн байхад “жижигрүүлье” гэвэл мөн ALT+ENTER товчийг дарах хэрэгтэй. Хэрэв цонхыг хаах, ө.х. системээс бүрмөсөн гарахыг хүсвэл ALT+X товчны хослолыг дарах хэрэгтэй.

Юуны өмнө цонхны бүтцийг харцгаая. Та бидний сайн мэдэх Word програмын цонхтой зарим талаар төстэй зүйл бий. Тухайлбал цонхны дээд талд үндсэн цэс байрлаж байна. Үндсэн цэс 10 хэсгээс (File, Edit, View г.м.) тогтсон байна. Програмын эх кодыг бичихэд шаардлагатай бүх л үйлдэл энд команд хэлбэрээр байрладаг. Түүний доор ажлын талбар байрлана. Ажлын талбар гэдэг нь тухайн мөчид нээгдсэн байгаа файлын цонх юм. Ер нь бол, системийг анх ачаалахад үндсэн цонхон дотор шинэ файлын цонх үүсч нээгдэх ёстой. Хэрэв тэгээгүй байвал File цэснээс New командыг сонгож шинэ файл үүсгэх хэрэгтэй. Шинэ файл автоматаар NONAME00.cpp гэсэн нэрийг авна. Тусгайлан нэр өгч хадгалаагүй байхад ийм нэртэй байдаг. Энд NONAME бол файлын нэр, cpp бол файлын өргөтгөл юм. Юун cpp өргөтгөлтэй файлын тухай яриад байна вэ гэж та гайхаж магадгүй юм. Бид програмынхаа эх кодыг байнга хадгалж байхын тулд, хүссэн үедээ ашиглахын тулд компьютерын тогтмол санах ойд хадгалах хэрэгтэй биз дээ. Гэтэл аливаа мэдээлэл тогтмол санах ойд яаж хадгалагддаг билээ? Файл хэлбэрээр хадгалагддаг. Тэгвэл си-програмын эх кодыг агуулагч файл нь cpp өргөтгөлтэй файл юм. Үүнийг эх файл (source file) гэдэг. Ө.х. энэ файл дотор бид програмын текстийг бичиж хадгална. Лекц дээр үзсэн жишээ програмаа одоо бичье.

Си хэлний хөрвүүлэгч том, жижиг үсгийг ялгаатай гэж үздэг учраас энд текстийг дан жижгээр бичсэн байна. Харин албаны үгнүүд автоматаар цагаан өнгөтэй болж ялгагддаг ажээ.

Файл хадгалах

Текстээ бичиж дуусаад файлаа хадгалах хэрэгтэй. Үүний тулд File цэснээс Save командыг (F2 товч) сонгоно.

Ингэхэд Save File As гэсэн цонх гарч ирнэ. Энэ цонхны Save file as хэмээх талбарт хадгалах нэрээ бичиж өгнө. Нэр бичихдээ дараах зүйлийг анхаарах хэрэгтэй. Файлын нэрийг 8 үсгээс уртаар өгвөл илүү гарсан хэсгийг систем хаядаг. Бид програмаа hello гэж нэрлэе. CPP гэсэн өргөтгөлийг бичих шаардлагагүй. Систем өөрөө энэ өргөтгөлийг нэрийн ардаас залгах болно. Тэгээд Ok дарах хэрэгтэй.

Ингэснээр эх код маань хатуу дискэнд hello.cpp гэсэн файл болж хадгалагдана. Хадгалах цонхны доод талд файлын байрлах замыг үзүүлсэн байна. Манай тохиолдолд hello.cpp файл C:\TC\WORK гэсэн хавтсанд үүсэх ажээ. Мэдээж хэрэглэгч өөрөө замаа сонгох боломжтой.

Зарим нэг тохиргоо

Одоо Турбо Си системдээ зарим нэг тохиргоог хийе. Дагаад гүйцэтгээрэй.

1.       Options цэсний Directories… командыг сонгоход гарч ирэх Directories цонхны дээд талын хоёр талбарт зурагт үзүүлсэнчлэн бичээд OK дарна:

Энэ нь системийн стандарт хавтсуудын замыг хөрвүүлэгчид зааж өгч байгаа хэрэг юм. Манай тохиолдолд Турбо Си систем C:\TC гэсэн замаар байрлана гэж үзсэн билээ. Хэрэв систем өөр замаар суусан бол дээрх замуудыг мөн өөрөөр бичиж таарна.

2.       Options цэсний Environment дэд цэсний Editorкомандыг сонгоход гарч ирэх Editor Options цонхонд буй сонголтуудаас Persistent blocks сонголтыг хүчингүй болгож, харин Overwrite blocks сонголтыг хийгээд OK дарна:

Ингэснээр ажлын талбарт текст бичих, сонгох, хуулах, зөөх, устгахад хялбар болж өгдөг.

Дээрх тохиргоонуудыг нэг удаа хийсэн бол дахин давтах шаардлага байхгүй.

Хөрвүүлэх

Шаардлагатай гэж үзсэн тохиргоонуудыг хийсэн учраас одоо бид бичсэн эх кодоо хөрвүүлж объект код гаргаж авах хэрэгтэй. Текст маань эх файл дотор агуулагдаж байгаа учраас эх файлаа хөрвүүлнэ гэсэн үг. Хөрвүүлэхэд объект файл (object file) үүсдэг. Дотроо объект кодыг агуулж байдаг файлыг объект файл гэнэ. Си-програмын объект файл нь obj гэсэн өргөтгөлтэй байдаг.  Харин нэр нь хэвээрээ байна. Хөрвүүлэх процессыг схемчлэн үзүүлбэл:

Hello.cpp

Хөрвүүлэлт (Compile)

Hello.obj

Бид Compile цэсний Compile командаар (ALT+F9 товчны хослол) үүнийг гүйцэтгэнэ. Хөрвүүлэлт амжилттай болсон тохиолдолд амжилттай боллоо, объект файл үүслээ гэж мэдээлсэн цонх гарч ирдэг. Дурын товч даран энэ цонхыг хаана.

Хатуу дискэнд, эх файл байрлах тэр хавтсанд hello.obj файл үүссэн байх болно. Манай тохиолдолд энэ нь WORK хавтас юм. Түүнчлэн bak гэсэн өргөтгөл бүхий файл (hello.bak) бас үүссэн байгаа. Энэ нь эх файлын нөөц хувилбар юм. Ямар нэг шалтгаанаар эх файл гэмтсэн, устсан үед эх кодыг нөөц файлаас сэргээж боломжтой.

Холбох

Ингэснээр бидний ажил хараахан дуусаагүй. Бид одоо үүсгэсэн объект файлаасаа ажиллах модуль (execution module) буюу биелэх програмыг гаргаж авах ёстой. Энэ бол манай эцсийн “бүтээгдэхүүн” бөгөөд exe гэсэн өргөтгөлтэй файл байдаг. Харин нэр нь хэвээрээ байна. Exe файл бол бидний анх бичсэн програмын 100% машины хэл дээрх хувилбар юм. Програмчлалын нэр томъёогоор, объект модулиас ажиллах модуль үүсгэх энэ алхмыг холболт хийх (Link) гэж нэрийддэг. Холболтыг холбогч (linker) хэмээх програм гүйцэтгэдэг. Үүнийг схемчлэн үзүүлбэл:

Hello.obj

Холболт (Link)

Hello.exe

Бид холболтыг Compile цэсний Make командаар (F9 товч) гүйцэтгэнэ. Холболт амжилттай болсон тохиолдолд мэдээлэх цонх гарч ирнэ. Хатуу дискэнд, эх файл байрлах тэр хавтсанд hello.exe файл үүснэ.

Яагаад холбох гэсэн нэр томъёо хэрэглэгдэж байна вэ? Яагаад гэвэл энэ алхам нь объект файлд стандарт сангийн функцуудыг холбож өгдөг учраас тэр. Гэхдээ препроцессорын үйлдлээс ялгаатай нь, зөвхөн програмд ашиглагдаж буй тэр функцуудын код объект файлд холбогдоно (нийлнэ). Тиймээс одоо бол эх кодоос биелэх програм гаргаж авах хүртэлх бүх алхмыг дараах байдлаар нэгтгэн схемчилж болно:

Ажиллуулах

Эцэст нь бид үүсгэсэн exe файлаа ажиллуулах ёстой. Ингэснээр бидний бичсэн програмыг компьютер биелүүлж эхлэх юм. Үүний тулд Turbo C++ орчноос Windows рүү буцаж шилжээд, дээрх зурагт (баруун талд нь) үзүүлсэнчлэн файлыг сонгож, ачаалж болно. Харин Turbo C++ орчин бидэнд системээс гаралгүйгээр шууд exe файлаа дуудаж ажиллуулах боломжийг олгодог. Үүнийг Run цэсний Run командаар (гарын CTRL+F9 товчны хослол) гүйцэтгэнэ. Тэгэхэд програм ажиллаж эхлэнэ.

Програм биелж эхлэхэд дэлгэцэнд юу гарах нь дээрх зургаас харагдаж байна. Дэлгэцийг бүхэлд нь эзэлсэн хар дэвсгэртэй цонх гарч ирэх бөгөөд хамгийн дээд талын мөрөнд Sain uu! гэсэн мэндчилгээ хэвлэгджээ. Ингээд програм түр “пауз” авсан байна. ENTER (эсвэл өөр нэг товч) дарвал програм төгсөж, буцаад Turbo C++ орчин гарч ирэх болно.

Хөрвүүлэлтийн алдаа (Error)

Ямар нэг шалтгаанаар эх кодонд дүрмийн алдаанууд (syntax errors) агуулагдаж байна гэе. Ийм тохиолдолд хөрвүүлэлт амжилттай болдоггүй. Хөрвүүлэгч нь эх кодыг мөр мөрөөр уншиж дуусгаад нийт таарсан алдааны тоог мэдээлсэн цонхыг гаргана. Ж.нь дараах зургийг харцгаая.

Одоо энэ кодыг хөрвүүлэх гэж үзье. Тэгвэл хөрвүүлэгч ажилласны дараа доорх цонх гарч ирнэ:

Дурын товч дарахад энэ цонх алга болж дэлгэц дараах байдалтай болно:

Юу болсон байна вэ? Үндсэн цонхны доод талд Message хэмээх цонх гарч ирсэн байна. Энд:

•Алдаа HELLO.CPP 7: ‘printf’ функцын прототип байхгүй байна

гэсэн зурвас бичигджээ. Үүнийг тайлбарлавал, HELLO.CPP файлын 7-р мөрөнд алдаа байна, учир нь printf() функцыг ашигласан боловч түүний прототипийг агуулагч толгой файлыг програмд оруулж ирээгүй байна гэсэн үг юм. Түүнчлэн файлын цонхонд, програмын текст доторх алдаатай мөрийг ялгаж харуулсан байна:

ENTER товч дарах юм бол файлын цонх идэвхжин, текстийг засварлах боломжтой болно. Ингээд засвараа хийж (#include <stdio.h> гэсэн директивийг бичээд) дахин хөрвүүлбэл “бүх зүйл Окей” болно. Хөрвүүлэгчийн өөр нэгэн чухал үүрэг эндээс харагдаж байна. Түүний тусламжтайгаар текстэнд агуулагдах аливаа алдааг илрүүлдэг юм. Ялангуяа том хэмжээний текстэнд энэ нь онцгой ач холбогдолтой.

Хөрвүүлэлтийн сануулга (Warning)

Заримдаа хөрвүүлэгч нь алдаа өгөхгүй боловч сануулга өгөх тохиолдлууд байж болно. Сануулга ба алдааны ялгаа нь хэдийгээр сануулга өгөгдсөн ч объект файл үүсдэг. Тэглээ гээд хөрвүүлэгчийн өгч буй сануулгуудыг тоолгүй орхиж болохгүй. Нэг сануулгаас болж програм буруу ажиллаад эхлэж магадгүй юм. Тиймээс гараад байгаа сануулгуудын шалтгааныг олж засах хэрэгтэй. Програм зохиогчийн гол зорилго бол 0 сануулга, 0 алдаатай програм бичих явдал билээ.

Шуурхай хандалт

Ажлын талбарын доод талд, үндсэн цэснээс байнга хэрэглэгдэж болох зарим командын нэр гараас дуудах товчны хамт харагдаж байдаг. Тухайлбал Тусламжийн системийг (Help) ажиллуулъя гэвэл F1 товчийг, файл хадгалъя гэвэл F2 товчийг, файл нээхийн тулд F3 товчийг, хөрвүүлнэ гэвэл ALT+F9, exe үүсгэнэ гэвэл F9 дарна г.м.

Сэдэвчилсэн хайлт

Хэрэв та текстэн доторх ямар нэг албаны үг юм уу стандарт функцын талаар мэдээлэл авахыг хүсвэл тэр үгийн доор курсорыг байрлуулаад CTRL+F1 товчны хослолыг дарах хэрэгтэй. Зөвхөн тухайн сэдвийн мэдээллийг агуулсан Тусламжийн цонх гарч ирнэ. Үүнийг Topic Search буюу Сэдэвчилсэн хайлт гэдэг. Ж.нь printf() функцын тухайд Topic Search хийж байгаа нь:

CTRL+F1

Санамж

Хэрэв таны компьютер Windows XP үйлдлийн системтэй бол та admin-ы эрхтэй хэрэглэгчээр нэвтрэх хэрэгтэй. Guest г.м. хязгаарлагдмал эрхтэй хэрэглэгчээр ороход Turbo C++ орчин зөв ажиллахгүй гэдгийг сануулъя.