Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2005.03.20;
Скачать: [xml.tar.bz2];

Вниз

{-I} {+I} {IOResult}   Найти похожие ветки 

 
Zhekson   (2005-03-03 12:10) [0]

Как в СИ сделать проверку на input/output по типу САБЖА? При записи(в Досе) на сетевой диск периодически выскакивает ошибка записи на сетевой диск, как избежать?


 
Digitman ©   (2005-03-03 12:43) [1]


> Zhekson


> Как в СИ сделать проверку на input/output


никак.

Собственно язык СИ не предусматривает никаких стандартов на эту тему.


> При записи(в Досе)


при чем здесь ДОС ?
форум - тематический, и темы его связаны с разработкой приложений для Windows, а не для ДОС


> на сетевой диск


хоть сетевой хоть не сетевой - никакого значения это не имеет.. возникла ошибка - анализируй ее причину


 
Zhekson   (2005-03-03 13:13) [2]

>>Digitman
никак

Это что же получается??? всё, кирдык???


 
Eraser ©   (2005-03-03 13:19) [3]

Zhekson

Переделай свою досовскую программу в консольную под Win32.


 
Anatoly Podgoretsky ©   (2005-03-03 13:33) [4]

Конечно, меня же не волнует, что в Паскале нельзя использовать синтаксис Си, почему должно волновать когда наоборот.


 
Zhekson   (2005-03-03 15:24) [5]

to Anatoly Podgoretsky ©   (03.03.05 13:33) [4]

с синтаксисом понятно, а как же реализация определённой задичи???
Т.е. если бы с подобной задачей столкнулся реальный программист, программирующий на СИ, то он сразу повесил бы на неё ярлык невыполнимости?


 
palva ©   (2005-03-03 16:12) [6]

Я что-то не очень понимаю проблему. Нужно проанализировать ошибку и выполнить соответствующие действия. Все это доступно хоть в DOS, хоть в Windows. Какой у вас досовский компилятор, какой язык (C/C++) и какая функция вывода?


 
Zhekson   (2005-03-03 16:51) [7]

Программа и компилятор соответственно на СИ.


 
Fay ©   (2005-03-03 17:06) [8]

>> на СИ.
Килограммы, метры и секунды?


 
palva ©   (2005-03-03 17:26) [9]

Zhekson   (03.03.05 16:51) [7]
> Программа и компилятор соответственно на СИ.

Ну чем выводите-то: функция _write, fprintf или WriteFile, может еще как-то - везде свои способы отлова ошибок. Чем компилируете: производитель компилятора, версия - ну хотя бы запустите компилятор без параметров и напишите, что он сообщил.


 
Zhekson   (2005-03-03 17:27) [10]

Fay ©   (03.03.05 17:06) [8]
О... помощь пришла откуда не ждали...

ну неужели на грэбанном СИ нельзя обойти эту проблему? Или я просто не в том месте вопрос задал?


 
Digitman ©   (2005-03-03 17:35) [11]


> Zhekson   (03.03.05 17:27) [10]


ну нельзя же быть таким упрямым)

тебе же говорят - ПРИ ЧЕМ ЗДЕСЬ CИ aka ЯЗЫК ?!

ведь и в ПАСКАЛЕ aka ЯЗЫКЕ нет и в помине никаких {-I} {+I} !!


 
Zhekson   (2005-03-04 12:56) [12]

Digitman ©   (03.03.05 17:35) [11]

ведь и в ПАСКАЛЕ aka ЯЗЫКЕ нет и в помине никаких {-I} {+I} !!


согласен, но в Паскале можно использовать такую(простую) конструкцию для решения подобной проблемы, а в СИ не то что бы такую, вообще не придумано видать ничего подобного...


 
Digitman ©   (2005-03-04 13:11) [13]


> в Паскале можно использовать такую(простую) конструкцию


нельзя.

если же ты под Паскалем подразумеваешь некое КОНКРЕТНОЕ его расширение (в виде Object Pascal, используемого как базовый язык в среде Делфи и компиляторе в ее составе), то тогда ты обязан был указать и КОНКРЕТНОЕ расширение языка СИ для КОНКРЕТНОГО компилятора в составе КОНКРЕТНОЙ среды разработки

это так трудно проинтуичить ?)


 
Германн ©   (2005-03-04 13:18) [14]

Я бы добавил. {$I+} и {$I-} это не столько элементы языка Паскаль, сколько опции компиллятора языка Паскаль фирмы Борланд.


 
Плохиш ©   (2005-03-04 13:25) [15]


>Или я просто не в том месте вопрос задал?

Вот уже делаешь успехи :-)


 
Digitman ©   (2005-03-04 13:29) [16]


> Или я просто не в том месте вопрос задал?


уже малацца)... коль засомневался ...


 
_Lucky_   (2005-03-04 13:51) [17]

А хелпа там не было? и действительно надо писать компилятор Borland Turbo C++ 3.0, пишу/читаю функциями ...., тогда всем будет понятен вопрос.

а вообще вот что я вытащил из хелпа

▄▄▄▄▄▄▄▄
&#9612;ferror&#9616;                           <STDIO.H>
&#9600;&#9600;&#9600;&#9600;&#9600;&#9600;&#9600;&#9600;
Macro that tests if an error has occurred on a stream

Declaration:  int ferror(FILE *stream);

Remarks:
ferror is a macro that tests the given stream for a read or write error.

If the stream"s error indicator has been set, it remains set until clearerr
or rewind is called, or until the stream is closed.

Return Value:
ferror returns non-zero if an error was detected on the named stream.

Portability:
&#9556; DOS &#9572; UNIX &#9572; ANSI C &#9572; C++ Only &#9559;
&#9553; Yes &#9474;  Yes &#9474;   Yes  &#9474;          &#9553;
&#9562;&#9552;&#9552;&#9552;&#9552;&#9552;&#9575;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9575;&#9552;&#9552;&#9552;& #9552;&#9552;&#9552;&#9552;&#9552;&#9575;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9565;

See Also:
 clearerr   eof        fopen      rewind

Example:

#include <stdio.h>

int main(void)
{
   FILE *stream;

   /* open a file for writing */
   stream = fopen("DUMMY.FIL", "w");

   /* force an error condition by attempting to read */
   (void) getc(stream);

   if (ferror(stream))  /* test for an error on the stream */
   {
      /* display an error message */
      printf("Error reading from DUMMY.FIL\n");

      /* reset the error and EOF indicators */
      clearerr(stream);
   }

   fclose(stream);
   return 0;
}


 
_Lucky_   (2005-03-04 13:55) [18]


> Digitman ©   (03.03.05 12:43) [1]
>
> > Zhekson
>
>
> > Как в СИ сделать проверку на input/output
>
>
> никак.
>
> Собственно язык СИ не предусматривает никаких стандартов
> на эту тему.


А собственно почему никак? т.е. на сях всегда пишут/читают не проверяя?
Я думаю в стардарте все Сей все четко описанно.


 
Zhekson   (2005-03-04 15:08) [19]

ахренеть просто можно...

это типа Вы, Digitman, ели конфеты с обёрткой если Вам просто предлагали их сьесть, не добавляя, что они вкуснее без обёртки??? это так трудно проинтуичить ?)

кстати обезьяны в своё время справились, хотя не, там ситуация другая была... там бананы...

Компилятор, будь то Борланд или Турбо Паскаль, да и Делфи тоже просто может взять и проверить файл на input/output и передать обработку пользователю... Всё что я хочу знать и всё что я вложил в свой вопрос: Может ли компилятор компилирующий код СИ(турбо, борланд) сделать то же, что может компилятор компилирующий паскалевский код???

Германнн - тебе пять, спасибо за теорию... помог, теоретически...


 
Digitman ©   (2005-03-04 15:47) [20]


> _Lucky_


по "типу САБЖА" (см. ориг.вопрос) смею заметить, что в неких абстрактных "сях" нет даже понятия "исключительная ситуация", а упомянутый автором САБЖ управляет поведением КОНКРЕТНОГО (а не абстрактного !) компилятора, который генерирует либо не генерирует код. приводящий к искл-ной ситуации ... и причем здесь, нафих, "выскакивает" там что-то куда-то у автора или наоборот "заскакивает" ?)


> ахренеть просто можно


а ты как думал ?)

ты двух слов связать не можешь на протяжении  кучи постов, вразумительно определив что тебе надо, как же тут не "ахренеть"  ?))

с-компиляторов разных - куча ... стандартов на директивы, управляющие (аналогичным дельфийным) поведением всех этих компиляторов по САБЖУ, тоже вроде бы нет и не предвидится ...
чего ж тебе еще надобно, старче ?)

нет бы сразу сказать, мол, я пользую такую-то конкретно с-based-среду разработки, мол, есть ли у с-компилятора в ее составе функциональные аналоги таких-то директив делфи-компилятора)


 
Zhekson   (2005-03-04 16:36) [21]

to Digitman ©   (04.03.05 15:47) [20]
ты двух слов связать не можешь на протяжении  кучи постов, вразумительно определив что тебе надо, как же тут не "ахренеть"  ?))

я между прочим обиделся...

а вообще Вы мне напоминаете одного коллегу, который постоянно всех поправляет, что не шесть вечера, а 18:00, не без 10, а без 13 мин. час и т.д... Довольно дотошно всё это смотрится...


 
Zhekson   (2005-03-04 16:38) [22]

to Digitman ©   (04.03.05 15:47) [20]
ты двух слов связать не можешь на протяжении  кучи постов, вразумительно определив что тебе надо, как же тут не "ахренеть"  ?))

я между прочим обиделся...

а вообще Вы мне напоминаете одного коллегу, который постоянно всех поправляет, что не шесть вечера, а 18:00, не без 10, а без 13 мин. час и т.д... Довольно дотошно всё это смотрится...


 
Германн ©   (2005-03-05 01:27) [23]

А зря обиделся.
Поскольку Вы всех встречных спрашиваете "Сколько прошло времени с тех пор, когда я проснулся". А откуда они могут это знать?


 
Германн ©   (2005-03-05 02:57) [24]

Это так, походя.
Есть кто-либо, достаточно умный, чтобы оьъяснить мне смысл фразы "Довольно дотошно всё это смотрится..."?
Или это из(в) "Орешеник(а)?


 
Defunct ©   (2005-03-05 04:51) [25]

Zhekson   (03.03.05 17:27) [10]

Упрямый Вы человек. Почему-то вместо того чтобы ответить на уточняющие проблему вопросы людей которые готовы и в состоянии Вам помочь... см
[1]
> возникла ошибка - анализируй ее причину

[6]
Ну чем выводите-то: функция _write, fprintf или WriteFile, может еще как-то - везде свои способы отлова ошибок. Чем компилируете: производитель компилятора, версия - ну хотя бы запустите компилятор без параметров и напишите, что он сообщил.

Вы упорно спорите с Digitman"ом, причем в стиле "че ты млин от меня хочешь всякий атстой "компилятор, среда разработки",
> ахренеть просто можно...
Дай мне загзигулины, которые мне нада в сваей проге нарисовать!"

"Довольно дотошно всё это смотрится..."

To Zhekson:
Компилятор, будь то Борланд или Турбо Паскаль, да и Делфи тоже просто может взять и проверить файл на input/output и передать обработку пользователю...

Вы что-то похоже слабо представляете, что есть компилятор, и что входит в его обязанности. Компилятор всего лишь транслирует Ваши каракули написанные на языке понятном компилятору и Вам в каракули понятные процессору, на этом функция компилятора заканчивается. Компилятор может проверить и сказать Вам, что нехватает какого-то исходника (файла с расширением .pas, .c и т.п.). Компилятор НЕ может "взять и проверить файл на input/output и передать обработку пользователю" потому что ваша "откомпилированная компилятором" программа уже является новым самостоятельным приложением. Она (Ваша "откомпилированная(переведенная на язык понятный процессору) компилятором" программа) работает уже без компилятора. Это очень важный момент, похоже вы его не до конца осознаете.

> будь то Борланд или Турбо Паскаль, да и Делфи
> проверить файл на input/output и передать обработку пользователю...

Способ проверки ошибок разный.
например, в Турбо Паскале нет блока except. {$i-} не поддерживается компилятором MCPas (для PIC контроллеров) т.к. там нет такого понятия как File в помине.


 
Zhekson   (2005-03-05 10:06) [26]

Defunct ©   (05.03.05 04:51) [25]
уау... спасибо конечно...

а если честно, то что Digitman, что Вы... Вам совсем не обязательно давать совет или ответ... Вам гораздо важнее не пропустить "шероховатость" в вопросе, что бы зацепиться за неточность формулировки. Вы оба уже по нескольку раз "перевели" мой вопрос, на Ваш(без единой задоринки) язык, но ни на милиметр не приблизились к ответу на мой вопрос. Иначе говоря, Вы ответите на мой вопрос только тогда, когда я задам его Вашими словами...

пример: _Lucky_   (04.03.05 13:51) [17]- попу морщить не стал,  взял и помог. кстати проинтуитничал ;)


 
Zhekson   (2005-03-05 10:11) [27]

Фу ты, ну ты.... Герман... когда я говорил про input/output я совсем не имел в виду Ваш поход из(в) "Орешеник(а)...


 
Digitman ©   (2005-03-05 10:32) [28]


> Zhekson   (04.03.05 16:38) [22]
> я между прочим обиделся


твое право.
но лучше бы на себя обижался


> _Lucky_ .. взял и помог


и как его пост в [17] относится к "типу САБЖА"

"тип" твоего "САБЖА" - это директивы КОНКРЕТНОГО КОМПИЛЯТОРА в составе КОНКРЕТНОЙ среды разработки под КОНКРЕТНУЮ ОС-платформу, включающие или отключающие режим автогенерации этим компилятором кода, возбуждающего исключения при возникновении ошибок ввода/вывода в файловых операциях

разве директивы эти "делают проверку" ?! они управляют поведением компилятора !! ... а не проверки делают "по типу" !


 
Digitman ©   (2005-03-05 10:49) [29]


> Zhekson


твой вопрос д.б. прозвучать хотя бы так :

я, мол, пользую такой-то С-компилятор для ДОС (в составе, возможно, такой-то среды разработки), каким образом при выполнениях мной файловых операций (с пом. таких-то конкретных ф-ций или операторов) я могу получить результаты их выполнения, чтобы проанализировать на предмет ошибок ввода/вывода

а тебя как Остапа "понесло" : "на сетевой диск", "по типу САБЖА", "выскакивает" там кто-то куда-то ... вся эта словесная дребедень совершенно неважна в данном конкретном случае и лишь мешает и уводит отвечающих от понимания истинной сути твоей проблемы ...

вот и получается, что ты двух слов связать не можешь, т.е. не в состоянии кратко/внятно/точно описать задачу


 
Zhekson   (2005-03-05 10:52) [30]

Digitman ©   (05.03.05 10:32) [28]

Я задал вопрос: как по типу чего-либо в одном языке, сделать аналогичное в другом. Всё. Зачем тут ещё что-то разписывать?
при чём тут директивы, шмириктивы??? - это всё формальности.

_Lucky_ понял вопрос и дал на него ответ. Вывод - ПОМОГ. Спасибо _Lucky_.

Вы - не поняли вопрос, прицепились к постановке вопроса, не дали на него ответ. Вывод - .... ... Digitman.


 
first_aid   (2005-03-05 11:04) [31]

2 Zhekson

Что то у меня сложилось впечатление, что Вас вообще не интересует решение сформулированного ВАМИ вопроса, такое чувство, то от нечего делат на работе, Вы просто решили потрепаться...


 
Zhekson   (2005-03-05 11:12) [32]

вот и получается, что ты двух слов связать не можешь, т.е. не в состоянии кратко/внятно/точно описать задачу

Согласен.
зато я знаю, что такое свободное время и как его использовать, что бы обернувшись назад не сожалеть о потерянном времени.


 
Digitman ©   (2005-03-05 11:53) [33]


> Zhekson   (05.03.05 10:52) [30]


> как по типу чего-либо в одном языке, сделать аналогичное
> в другом


в общем случае - никак.
в частных же, вероятно, и можно ... но этот самый "частный" случай из тебя клещами вытаскивать приходится)..

например, рассмотрим ноне модный пирсинг - тот самый "частный" случай : проколоть дырку (то самое "чего-либо") и засандалить туда блестючую безделушку можно в любом языке

а теперь другой пример (вспомним Задорнова) - то что можно сказать и понять на русском языке ("Люблю я тебя !"), выглядит полным бредом на аглицком языке ("Love I You !") ... )

разницу осюсяешь ?)


> при чём тут директивы, шмириктивы???


вот и мне непонятно - при чем тут директивы OP-компилятора, если тебя интересует просто язык "С"


 
Arm79 ©   (2005-03-05 12:14) [34]

2 Zhekson

Вы просили помощи. Вам ее готовы оказать, но просят указать какую среду разработки и какой компилятор используете, какими функциями осуществляется запсиь на сетевой диск. Иначе невозможно правильно ответить. Вы же, вместо того, чтобы ответить на уточняющие вопросы, начинаете хамить уважаемым людям.


 
Zhekson   (2005-03-05 12:35) [35]

Arm79 ©   (05.03.05 12:14) [34]

Уважаемый Digitman, зачем эти перевоплощения и входы на сервер под ником Arm79 ???

Если я Вас оскорбил, то извините, и в мыслях небыло - это всё от всё того же неумения двух слов связать ;((


 
Arm79 ©   (2005-03-05 12:48) [36]

8-)

Digitman не опустится до того, чтобы менять всой ник.

Я, он и есть Я. Анкету то можно посмотреть.


 
Digitman ©   (2005-03-05 12:55) [37]


> Zhekson   (05.03.05 12:35) [35]


прежде чем упрекать кого-то в клоунаде не стоит самому устраивать ее


 
Гость   (2005-03-05 17:16) [38]

Дааа...  случай не из легких. Начинал читать - улыбался, теперь грустно..


 
_Lucky_   (2005-03-06 10:47) [39]

4All на самом деле зайдя сегодня был впервые за несколько лет разачарован посетителя этого форума и конкретно товарищами, которые перемываю челу не смогшему правильно поставить вопрос костосточки. А все дело в том, что это форму, а не экзамен, сюда люди приходят учиться - это источник знаний, я не в коем случае не защищаю чела который в принцепе не совсем корректно поставил вопрос, но какого черта трепатся с ним и учить его жизни, если Вы не смогли понят вопроса совсем, то может и не стоит трепыхаться, а стоит просто уити с этой ветки, если Вы поняли вопрос не до конца, то можно просто попросить дать разъяснения, но всегда бывают НО, например люди не могут ответить на ваши вопросы, но при этом хотят получить ответ на свой именно для этого они и пришли на форум - кто-нить да поможет.
Вся эта история напоминает мне мою жену, которая все время спрашивает у моего годовалого ребенка чего он хочет, и каждый раз искренне ждет ответа, но он то еще не умеет говорить, в лучшем случае он покажет на это рукой - почему-то ее это злит, но ведь он еще мал, подростет научится.
Вот так и чел спросивший -  ну не может он еще правильно объяснить, ну Вы то будте умнее попросите его показать исходник (его часть), ну а если Вам не хотса отвечать, то о чем тогда речь ...

Выражения типа вот этого

> Fay ©   (03.03.05 17:06) [8]
> >> на СИ.
> Килограммы, метры и секунды?


очень помогают! и главное после можно гордо сказать "я тут поучаствовал!"

Я не пойму одного неуже все мастера делфи, ну пусть хоть один, да и не только мастера а просто аудитория форума, такая гиниальная, что всегда все знает и умеет - и как задать вопрос и как ответить на него - наверное нет, наверное каждый в какой области больше разбирает в какой-то меньше, но в любом случае на него не пришло прозрение в один прекрасный день и он не сказал теперь я знаю как писать проги на делфях, при этом не ничего не уча. Все люди учатся и надо довать им возможность в этом - ну или по крайней мере не мешать

Совет автору - постарайтесь в следующий раз всетаки описывать проблему конкретнее, я думаю если бы Вы привели исходних (его часть), то ничего страшного бы не произоло

Надеюсь что побывав в этой ветке все сделали для себя выводы ...


 
Anatoly Podgoretsky ©   (2005-03-06 11:11) [40]

_Lucky_   (06.03.05 10:47) [39]
Вот это не смог читать без улыбки, давно к нам первокласники не заходили.


 
_Lucky_   (2005-03-06 11:49) [41]


> Anatoly Podgoretsky ©   (06.03.05 11:11) [40]
> _Lucky_   (06.03.05 10:47) [39]
> Вот это не смог читать без улыбки, давно к нам первокласники
> не заходили.

ну у каждого свое мнение, хотя интересно в чем именно Вы меня считаете первокласником, или может первокласным в чем-то :)
К сведению: начальную школу я закончил давненько (1990)


 
Anatoly Podgoretsky ©   (2005-03-06 11:55) [42]

По уровню орфографии, уже во втором классе пишут правильнее. А нотации начинают читать в восьмом.


 
_Lucky_   (2005-03-06 12:05) [43]

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

А собственно заходил не к Вам а на форум! или у Вас исключительное право на форум?


 
Anatoly Podgoretsky ©   (2005-03-06 12:13) [44]

Ты отказываешь мне в праве писать в форум?
И смеяться над безграмотными сообщениями?


 
_Lucky_   (2005-03-06 12:28) [45]

Я абсолютно ничего не запрещаю, Ваше право, хоть в окошко с 9 этажа.
А собственно где можно было это вычитать? я в своем посте такого не вижу.


 
Anatoly Podgoretsky ©   (2005-03-06 13:58) [46]

Ну где уж, для того чтобы разбирать в логике, сначала надо научиться писать грамотно. Логика на порядок сложнее, чем правописание.

Пишу то я правильно, только правописание у меня хромает. (с) Винни.


 
_Lucky_   (2005-03-06 17:18) [47]

Возможно мысли и верные, но причем тут логика? Это типа из области я щас брякну умную мысль все и заткнутся?
Вы так и не сказали где я Вам отказывал в чем-либо.
А насчет грамотности, так я про это знаю, ну и что с того? Идеальных людей нет. Всегда есть что-то лучше и что-то хуже. Так и с Вами, или Вы уверены что вы пишите идеально? Собственно я бы рад поднять свой уровень, да видно не судьба, да и в принцепе мне этого хватает.
Очень интересно [46] из соображений какой логики написан?



Страницы: 1 2 вся ветка

Форум: "Основная";
Текущий архив: 2005.03.20;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.6 MB
Время: 0.039 c
3-1108621131
Sour
2005-02-17 09:18
2005.03.20
Можно ли в условии запроса использовать хранимую процедуру


4-1107707452
Локли
2005-02-06 19:30
2005.03.20
Уровень звука


14-1109748040
Павел
2005-03-02 10:20
2005.03.20
SATA RAID 0 Нужен ли он?


14-1109712743
Andryk
2005-03-02 00:32
2005.03.20
Я се стрим поставил. Эх лепота!!!


3-1108568740
juice
2005-02-16 18:45
2005.03.20
CREATE TABLE в хранимой процедуре





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский