.RU

08.01.05. Вывод средствами языка Turbo Prolog - Лекция 08


^ 08.01.05. Вывод средствами языка Turbo Prolog
Средствами языка Turbo Prolog невозможно вывести данные ни в стандартный поток ошибок, ни в стандартный поток печати (по крайней мере, автору они не известны).
^ 08.01.06. Вывод средствами языка Visual Basic Script
Для вывода текста в стандартный поток ошибок на языке Visual Basic Script используются те же функции, что и в стандартный поток вывода. При этом в конструкции поток StdOut необходимо заменить потоком StdErr. Более подробно смотри пункт 07.01.07 лекции 07 данного курса.
^ 08.02. Файловый ввод-вывод Содержание.
08.02.01. Ввод-вывод средствами языка Си

08.02.02. Ввод-вывод средствами языка C++

08.02.03. Ввод-вывод средствами языка Basic

08.02.04. Ввод-вывод средствами языков Perl и Python

08.02.05. Ввод-вывод средствами языка Turbo Prolog

08.02.06. Ввод-вывод средствами языка Visual Basic Script
^ 08.02.01. Ввод-вывод средствами языка Си
Для вывода в файл с помощью стандартных функций потокового вывода на языке Си используются следующие функции:

Но прежде чем использовать эти функции, необходимо «связать» входной или выходной поток с переменной потока, а после прекращения использования потока закрыть его. Это осуществляется с помощью следующих функций:

Примечание: при закрытии потока всегда проверяйте значение его указателя не равное нулю (значению «NULL»). Это значение указывает, что при открытии файла произошла ошибка. Если же Вы будете «закрывать» «нулевой» указатель, это может привести к серьёзным ошибкам в Вашей программе;

Примечание: данные функции могут быть использованы для определения причины возвращения ошибочного значения при вводе-выводе данных, осуществляемых при помощи функций потокового ввода-вывода (смотрите выше);

Более подробную информацию о функциях потокового ввода-вывода смотри книгу [3].

Примечание: Как Вы уже смогли убедиться, с помощью операций потокового ввода-вывода можно создавать и использовать файлы размером не более 64 Кбайт. Поскольку это очень малая величина, то для открытия файлов большего размера необходимо использовать другие функции работы с файлами (например, для консольного ввода вывода или ввода-вывода с использование библиотек API);

Пример файлового ввода-вывода смотри ниже:
Пример 08.003
/* File ex08003.c Запись значения в текстовый файл */

/* Данный пример тестировался в системе программировани

Borland C/C++ 3.10 */

#include

#include

#include

#ifndef STR_LENGTH

#define STR_LENGTH 5 // Длина строки 3 символа

#endif

void main()

{

char str[STR_LENGTH]; // Текстовый буфер

FILE *outputStream; // Выходной поток

char c, *s; // Временная переменна

int icsize; // Временная переменна

if( (outputStream = fopen( "tempfile.txt", "wt" )) == NULL ) // Открытие потока

{

fprintf( stderr, "\nОшибка открытия файла: %s", "tempfile.txt" );

return;

}

memset( str, '\0', STR_LENGTH ); // Обнуляем буфер

icsize = STR_LENGTH;

(void) printf( "\nВведите строку из %d символов: ", icsize );

s = fgets( str, icsize, stdin ); // Читаем не более 2 символов с входного потока

// (вместе с нулевым символом)

if( !s )

{

fprintf( stderr, "\nОшибка ввода значения" );

return;

}

(void) fprintf( outputStream, "%2d ", strlen(s) ); //Выводим длину строки

(void) fprintf( outputStream, "%4s", s ); // Выводим значение строки

if( !outputStream )

fclose( outputStream ); // Закрываем поток

// Завершение работы программы

puts( "\nPress any key to continue...");

while( !(c = getch()) ); // Цикл пока не нажата клавиша

}
Пример 08.004
/* File ex08004.c Чтение данных из текстового файла */

/* Данный пример тестировался в системе программировани

Borland C/C++ 3.10 */

#include

#include

#include

#ifndef STR_LENGTH

#define STR_LENGTH 5 // Длина строки 3 символа

#endif

void main()

{

char str[STR_LENGTH]; // Текстовый буфер

FILE *inputStream; // Входной поток

char c, *s; // Временная переменна

int icsize; // Временная переменна

icsize = STR_LENGTH;

if( (inputStream = fopen( "tempfile.txt", "rt" )) == NULL ) // Открытие потока

{

fprintf( stderr, "\nОшибка открытия файла: %s", "tempfile.txt" );

return;

}

memset( str, '\0', STR_LENGTH ); // Обнуляем буфер

if( !fscanf( inputStream, "%d", icsize ) )

{

fprintf( stderr, "\nОшибка чтения или неправильный формат файла: %s", "tempfile.txt" );

if( !inputStream )

fclose( inputStream ); // Закрываем поток

return;

}

if( icsize > STR_LENGTH ) // Проверка на длину строки

{

fprintf( stderr, "\nНеправильный формат файла: %s", "tempfile.txt" );

if( !inputStream )

fclose( inputStream ); // Закрываем поток

return;

}

if( !(s = fgets( str, icsize+2, inputStream )) ) // Чтение строки из файла

{

fprintf( stderr, "\nОшибка чтения или неправильный формат файла: %s", "tempfile.txt" );

if( !inputStream )

fclose( inputStream ); // Закрываем поток

return;

}

if( !inputStream )

fclose( inputStream ); // Закрываем поток

printf( "\nДлина строки: %2d символов,", strlen(s) ); //Выводим длину строки

printf( "\nЗначение строки: %5s.", s ); // Выводим значение строки

// Завершение работы программы

puts( "\nPress any key to continue...");

while( !(c = getch()) ); // Цикл пока не нажата клавиша

return;

}

26-vidi-programmnih-produktov-dlya-np-process-upravl-ya-svyazan-s-obmenom-info-ej-mezhdu-komp-mi-sist-mi-i-s-okruzh-shej.html
26-vozmozhnosti-i-osnovnie-napravleniya-sotrudnichestva-stran-sng-v-valyutnoj-sfere.html
26-zadaniya-dlya-samokontrolya-e-b-zolotuhina-metodicheskaya-razrabotka-osnovi-biznes-modelirovaniya.html
26-zakonomernosti-formirovaniya-dvigatelnogo-navika-uchebnoe-posobie-balashov-2004-udk-796.html
26-zoni-sanitarnoj-ohrani-pravila-tehnicheskoj-ekspluatacii-sistem-i-sooruzhenij-kommunalnogo-vodosnabzheniya-i.html
26000120.html
  • gramota.bystrickaya.ru/ya-vlyublen-v-tebya-rossiya-vlyublen.html
  • uchitel.bystrickaya.ru/rabota-elektroshemi-istochnikov-postoyannogo-toka-konspekt-po-aviacionnomu-i-radioelektronnomu-oborudovaniyu-yak-18t.html
  • teacher.bystrickaya.ru/gibel-r-amundsena-na-latame47-igor-a-muromov.html
  • ekzamen.bystrickaya.ru/rol-mass-media-i-m-sazonova-spid-chudovishnij-obman.html
  • esse.bystrickaya.ru/razdel-iii-zakon-respubliki-moldova.html
  • institut.bystrickaya.ru/tehnicheskoe-zadanie-na-postavku-monitorov-vitalnih-funkcij-nihon.html
  • exchangerate.bystrickaya.ru/geohimiya-e-t-o-deyatelnosti-rossijskoj-akademii-nauk-v-2001-godu-osnovnie-rezultati-v-oblasti-estestvennih-tehnicheskih.html
  • learn.bystrickaya.ru/generalnij-plan-gorodskogo-poseleniya-fgup-rosnipi-urbanistiki.html
  • books.bystrickaya.ru/biznes-novosti-bizliganet-29112010-pensionnij-fond-sdelal-pereraschet-pensij-v-storonu-uvelicheniya.html
  • shpargalka.bystrickaya.ru/uchebnoe-posobie-tomsk-2006-perechen-ispolzuemih-sokrashenij.html
  • shpargalka.bystrickaya.ru/voprosi-k-ekzamenu-po-discipline-osnovi-specialnoj-pedagogiki-i-psihologii-stranica-2.html
  • credit.bystrickaya.ru/perechen-osnovnih-proizvoditelej-attrakcionov.html
  • uchenik.bystrickaya.ru/analiz-stihotvorenij-ahmatovoj.html
  • student.bystrickaya.ru/15metod-grom-dlya-ponimatelnogo-obucheniya-diplomnaya-rabota.html
  • letter.bystrickaya.ru/ob-utverzhdenii-nacionalnoj-programmi-obnovleniya-i-decentralizacii-sistem-teplosnabzheniya-naselennih-punktov-respubliki-moldova-opublikovan-05-09-2003-v-monitorul-oficial-nr-191-195-statya-1105-stranica-7.html
  • abstract.bystrickaya.ru/1celi-i-zadachi-disciplini-uchebnie-programmi-disciplin-kafedri-dizajn-specialnosti-070601-dizajn-graficheskij.html
  • testyi.bystrickaya.ru/8-specialnost-19020765-mashini-i-oborudovanie-prirodoobustrojstva-o-zachislenii-v-chislo-studentov.html
  • notebook.bystrickaya.ru/izveshenie-o-provedenii-otkritogo-konkursa-po-privlecheniyu-podryadnih-organizacij-dlya-vipolneniya-rabot-po-kapitalnomu-remontu-mnogokvartirnih-domov.html
  • control.bystrickaya.ru/blazhenni-krotcii-yako-miu-nasl-dyat-zemlyu-stranica-4.html
  • student.bystrickaya.ru/25kontekstnoe-menyu-rukovodstvo-polzovatelya-versiya-01.html
  • paragraf.bystrickaya.ru/zhmis-badarlamasi-materialdardi-ndeu-tehnologiyasi.html
  • prepodavatel.bystrickaya.ru/tel-812-718-37-94-kseniya-chuprova-centr-razvitiya-nekommercheskih-organizacij.html
  • bukva.bystrickaya.ru/mihail-ageev-roman-s-kokainom-stranica-7.html
  • tasks.bystrickaya.ru/1-harakteristika-postroeniya-tehnologicheskih-shvejnih-cehov.html
  • assessments.bystrickaya.ru/biznes-plan-organizaciya-serijnogo-vipuska-visokoeffektivnih-ochistnih-kompleksov-i-produkcii-elektronnogo-mashinostroeniya-zao-investicionnaya-kompaniya-kontrast-stranica-9.html
  • education.bystrickaya.ru/29-fevralya-sostoyalas-igra-a-nu-ka-parni-pobedili-russkie-bogatiri-chitajte-podrobnee-na-shkolnom-sajte.html
  • holiday.bystrickaya.ru/metodika-kompleksnogo-vozdejstviya-na-detej-doshkolnogo-vozrasta-s-obshim-nedorazvitiem-rechi.html
  • zadachi.bystrickaya.ru/tema-5-otvetstvennost-za-zemelnie-pravonarusheniya-programma-disciplini-zemelnoe-pravo-cikl-opd-f-16-obsheprofessionalnie.html
  • klass.bystrickaya.ru/6-virtualnie-datchiki-a-a-kirilchenko-e-yu-zueva.html
  • lektsiya.bystrickaya.ru/programma-kursa-delovoj-anglijskij-obshaya-harakteristika-znanie-inostrannogo-yazika-anglijskogo.html
  • uchit.bystrickaya.ru/uchebnaya-programma-dlya-10-11-klassov-v-usloviyah-perehodnogo-perioda-1-uchebnaya-programma-na-9-11-klassi-v-usloviyah-perehodnogo-perioda-13-stranica-2.html
  • laboratornaya.bystrickaya.ru/rabochaya-programma-disciplini-mikrobiologiya-brodilnih-proizvodstv-dlya-specialnosti-260204-tehnologiya-brodilnih-proizvodstv-i-vinodelie-napravlenie-260200.html
  • occupation.bystrickaya.ru/muza-po-vizovu-viktoriya-isaeva.html
  • abstract.bystrickaya.ru/13-trudoustrojstvo-vipusknikov-mati.html
  • esse.bystrickaya.ru/rassmotreno-soglasovano-utverzhdayu.html
  • © bystrickaya.ru
    Мобильный рефератник - для мобильных людей.