С++ те бағдарламалау пәнінен дәрістер


"r" – бар мәтіндік файл оқу үшін ғана ашылады; "а"



бет69/79
Дата07.02.2022
өлшемі380,73 Kb.
#94133
түріПрограмма
1   ...   65   66   67   68   69   70   71   72   ...   79
Байланысты:
Дәріс сабақтары С каз

"r" – бар мәтіндік файл оқу үшін ғана ашылады;
"а" – мәтіндік файл оған жаңа ақпарат қосу үшін (файл соңына) ашылады (немесе егер файл жоқ болса, құрылады) . V режиміне қарағанда "а" режимі бар файлдарды олардың алдындағы версияларын жоймай ашады және оған ары қарай жазуға болады;
"w+" – жаңа мәтіндік файл жазу үшін және ары қарай бірнеше рет қолдану үшін ашылады.Егер файл бар болса, онда оның мазмұны тазарады. Файлдардың келесі ашылуы жазу мен одан оқу файлдың кез келген жерінде рұқсат етілген, сонымен қатар файлдың соңына да жазу қосуға болады, яғни, файл көлемі үлкейе алады (көбейе);
"r+" – бар мәтіндік файл оқу үшін де жіне файлдың кез келген жеріне жазу үшін де ашылады. Бірақ, бұл режимде файлдың соңына жазу мүмкін емес, яғни, файл өлшемін кеңейту мүмкін емес.;
"а+" – мәтіндік файл өзгертуге болатындай ашылады немесе құрылады (егер ол жоқ болса) яғни, кенз келген жерден оқу мен жазу мүмкін болатындай; Сонымен қатар "w+" режиміне қарағанда бар файлды оның мазмұнын жоймай ашу мүмкін; "г+" режиміне қарағанда "а+" режимінде файл соңына жазу енгізуге болады, яғни, оның көлемін өзгертуге болады.
Лекті мәтіндік немесе екілік(бинарлық) режимде ашуға болады.
Мәтіндік режимде лектен оқылған символдар комбинациясы CR (13 мәні ) және LF (10 мәні) , яғни, " каретканы қайтару" және "жолды тасымалдау" басқарушы кодтары жаңа жолдың бір символына '\n' (LF) , CR және LF кезектілігін ауыстыру арқылы түрленеді.
Егер лекпен байланысты файл мәтіндік емес, өзіндік екілік ақпараттан тұрса, онда көрсетілген түрлендірулер керек емес және зиянды болуы да мүмкін. Бұндай түрлендірусіз алмасу b әрпімен белгіленетін, екілік немесе бинарлық режимде орындалады. Мысалы, "r+b" немесе "wb". Кейбір компиляторларда мәтіндік файл t әрпімен белгіленеді, яғни, "a+t" немесе "rt" түрінде жазылады.
Егер лек өзгерту үшін шылған болса, яғни, режим параметрінде "+", символы бар болса, онда лекке шығарумен қатар одан оқу да мүмкін. Бірақ, режимді ауыстыру (оқудан жазуға өту немесе керісінше) лек нұсқаушысын керекті позицияға орналасырғаннан кейін ғана орындалуы керек.
Лекті ашуда келесідей қателер пайда болуы мүмкін: лекпен байланысқан нұсқалған файл табылған жоқ (оқу режимі үшін); диск бос емес немесе дискіге жазуға рұқсат жоқ және т.б. fopen() функциясының орындалуы кезінде динамикалық жадының бөлінуі орындалатынын ескерте кету керек. Ол жоқ болған жағдайда "Not enough memory" (жадыда орын жоқ) қате белгісі шығады. Аталған жағдайларда, лекке нұсқаушы NULL мәніне ие болады.
Лекпен байланысқан файлдарды ашуда қолданылатын операторлар кезектілігіне мысал келтірейік:


Достарыңызбен бөлісу:
1   ...   65   66   67   68   69   70   71   72   ...   79




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

    Басты бет