Программалау тілдері жоғары оқу орындарына арналған оқулық



жүктеу 5,01 Kb.
Pdf просмотр
бет59/82
Дата16.05.2018
өлшемі5,01 Kb.
#14051
түріПрограмма
1   ...   55   56   57   58   59   60   61   62   ...   82

 
161 
тӛмен  болмайтын  жҧмысшылар  жайлы  ақпаратты  шығару  керек.  Егер,  ондай 
жҧмысшы болмасы, программа экранға сәйкесінше хабарламаны шығаруы тиіс. 


 
162 
10  ФАЙЛДАРДЫ ПАЙДАЛАНУ 
Файл – сыртқы есте сақтау қҧрылғыларында (магниттік дискілерде) орналас-
тырылған және мәлімет ӛңдеу, тасымалдау кездерінде біртҧтас кҥйде қарасты-
рылатын мәліметтер жиыны.  
Файлдармен  жҧмыс  істеу  ҥшін  оларды,  алдымен,  ашу  керек,  яғни  файл 
туралы мәліметті – атын, адресін программаға белгілі ету қажет.  
С  тілінде  файл  ашу  fopen()  функциясы  арқылы  орындалады.  Ол  сыртқы 
қҧрылғыдағы физикалық файлды, мысалы, А:\NUR.DAT, программадағы оның 
логикалық  атымен  байланыстырады.  Логикалық  ат  дегеніміз  –  файлға  нҧс-
қауыш,  яғни  файл  туралы  мәлімет  сақталатын  жады  аймағына  сілтеме  жасау. 
Файлға нҧсқауыш сипатталуы тиіс.  
Сонымен, файлдармен жҧмыс істегенде нҧсқауыштар қолданылады. Файлға 
нҧсқауыш мынадай тҥрде сипатталады: 
FILE  *fp; 
мҧндағы FILE типі –  тақырыптық файлында анықталған қҧрылым. Бҧл 
нҧсқауышты  кӛрсетілген  файлмен  сол  файл  ашылғаннан  бастап,  байланысты-
рып қоюға болады. Ол ҥшін келесі функция пайдаланылады: 
fopen ("файл адресі/аты","қатынасу типі"); 
ол файлға нҧсқауыш мәнін қайтарады немесе қате болса, NULL мәнін береді. 
Мысалы, мынадай оператор орындалуы нәтижесінде  
fp = fopen ("ex1.txt", "w"); 
жҧмыс бумасындағы ex1.txt файлы оған мәлімет жазу (write) ҥшін ашылады, 
ал программада бҧл файлды fp нҧсқауышы арқылы пайдаланамыз (яғни fopen() 
функциясы  файлдың  сыртқы  атын  оның  программада  қолданылатын  ішкі 
логикалық атымен байланыстырады). 
Сонымен, файлды ашатын  fopen() функцияcының жалпы жазылуы: 
fp = fopen(name, mode)  
мҧнда fp – файлға сілтейтін нҧсқауыш; name – файлдың адресін де кӛрсетуге 
болатын аты, кӛбінесе символдық тіркес арқылы жазылады; mode –  файл 
қандай режимде қолданылатынын кӛрсететін параметр, бҧл да символдар 
тіркесімен тӛмендегідей тҥрде жазылады:  
"r" – файлды оқу ҥшін ашу (файл бҧрын ашылған болуы тиіс); 
"w" – бос файлды информация жазу ҥшін ашу; 
"a" – файл соңына мәлімет қосып жазу ҥшін оны ашу; 
"r+"– файлдан информация оқу және оған информация жазу ҥшін ашу); 
"w+"– бос файлдан информация оқу және оған мәлімет жазу ҥшін файл ашу 
(бҧрын файл болса, ол ӛшіріледі); 
"a+"– файлдан информация оқу және оның соңына информация қосып жазу 
ҥшін ашу). 
"t"  –   файл мәтіндік (текстік) режимде ашылады, ол rt, wt, at, т.с.с. болып 
кӛрсетіле береді. 
"b" –  файл екілік режимде  ашылады, rb, wb, ab, т.с.с. болып кӛрсетіле береді. 
Келісім бойынша файл кӛбінесе мәтіндік режимде ашылады. 


 
163 
Файлмен жҧмыс істеп болған соң, оны жабу ҥшін келесі функция қолданы-
лады: 
fclose (файл_нұсқауышы). 
Файлға мәлімет жазу/оқу ҥшін жалпы енгізу/шығару функциялары тәріздес 
бірсыпыра функциялар пайдаланылады: 
fprintf(), fscanf(), fputs(), fgets(), getc(), putc(), fgetc(), fputc(). 
Бҧлардың  ішіндегі  getc()/fgetc(),  putc()/fputc()  функциялары  әрекеттері 
ҧқсас, айырмашылықтары тек getc() пен putc() макроанықтаулар да, aл  fgetc() 
және fputc() – нағыз функциялар болып табылады. 
Барлық файлдық функциялар прототиптері  файлында орналасқан. 
Файлдардан мәлімет жазу/оқу әрекеттерін ҥш топқа бӛлуге болады: 
- символдарды енгізу/шығару операциялары; 
- сӛз тіркестері жолдарын енгізу/шығару операциялары; 
- блок бойынша енгізу/шығару операциялары. 
Символдарды енгізу/шығару операцияларында файлдан бір ғана символ 
оқылады немесе оған бір символ жазылады. Мысалы: 
fgetc(FILE *fp); 
         ашылған файлдан символ оқиды. 
fputc(int ch,FILE *fp);       ch символы кодын файлға жазады. 
Сӛз  тіркестері  жолдарын  енгізу/шығару  операцияларында  бір  мәлімет 
алмасуы кезінде файлдан сӛз тіркесі жолдары оқылады немесе оған сӛз тіркесі 
жазылады. Мысалы:  
gets(char  *S);    файлдан  мәлімет  байттарын  '\n'  символы  кездескенше 
біртіндеп оқиды да, оларды  S тіркесіне орналастырып, '\n' символын ‗\0‘ (нӛл-
терминатор) белгісіне айналдырады. 
fgets(char *S,int m,FILE *fp);    fp тҥрінде сипатталған файлдан байттарды 
оқып,  оларды  '\n'  символы  кездескенше  немесе  m  байт  оқылып  біткенше  S 
тіркесі мәні ретінде жазып шығады. 
Блок  бойынша  енгізу/шығару  операцияларында  мәліметтер  алмасу 
олардың бір блогын толық қамтиды. Мысалы: 
   
fread (void *ptv, int size, int n, FILE *fp);   
мҧнда  fp  файлынан  әрқайсысы  size  байттан  тҧратын  мәліметтің    n  блогы  ptv 
нҧсқауышы  кӛрсетіп  тҧрған  жады  аймағына  оқылады  (оқылатын  блок  ҥшін 
алдын ала орын дайындап қою қажет). 
fwrite (void *ptv, int size, int n, FILE *fp); 
мҧнда ptv нҧсқауышы кӛрсетіп тҧрған жады аймағында орналасқан  әрқайсысы 
size байттан тҧратын мәліметтің  n блогы ашық тҧрған fp файлына жазылады. 
10.1 fprintf және fscanf функцияларын пайдалану 
fprintf
    файлға  информация  жазу  ҥшін,  ал    fscanf    файлдан  информация 
оқу ҥшін қолданылады. Олардың жалпы жазылу тҥрі: 
fprintf(fp, “спецификация шаблоны”, p);
 
мҧндағы – ӛрнек;  
fscanf(fp, “спецификация шаблоны”, адрес); 


жүктеу 5,01 Kb.

Достарыңызбен бөлісу:
1   ...   55   56   57   58   59   60   61   62   ...   82




©g.engime.org 2024
әкімшілігінің қараңыз

    Басты бет
рсетілетін қызмет
халықаралық қаржы
Астана халықаралық
қызмет регламенті
бекіту туралы
туралы ережені
орталығы туралы
субсидиялау мемлекеттік
кеңес туралы
ніндегі кеңес
орталығын басқару
қаржы орталығын
қаржы орталығы
құрамын бекіту
неркәсіптік кешен
міндетті құпия
болуына ерікті
тексерілу мемлекеттік
медициналық тексерілу
құпия медициналық
ерікті анонимді
Бастауыш тәлім
қатысуға жолдамалар
қызметшілері арасындағы
академиялық демалыс
алушыларға академиялық
білім алушыларға
ұйымдарында білім
туралы хабарландыру
конкурс туралы
мемлекеттік қызметшілері
мемлекеттік әкімшілік
органдардың мемлекеттік
мемлекеттік органдардың
барлық мемлекеттік
арналған барлық
орналасуға арналған
лауазымына орналасуға
әкімшілік лауазымына
инфекцияның болуына
жәрдемдесудің белсенді
шараларына қатысуға
саласындағы дайындаушы
ленген қосылған
шегінде бюджетке
салығы шегінде
есептелген қосылған
ұйымдарға есептелген
дайындаушы ұйымдарға
кешен саласындағы
сомасын субсидиялау