Форум программистов «Весельчак У»
  *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

  • Рекомендуем проверить настройки временной зоны в вашем профиле (страница "Внешний вид форума", пункт "Часовой пояс:").
  • У нас больше нет рассылок. Если вам приходят письма от наших бывших рассылок mail.ru и subscribe.ru, то знайте, что это не мы рассылаем.
   Начало  
Наши сайты
Помощь Поиск Календарь Почта Войти Регистрация  
 
Страниц: [1]   Вниз
  Печать  
Автор Тема: Return value of fprintf  (Прочитано 3949 раз)
0 Пользователей и 1 Гость смотрят эту тему.
rapa
Гость
« : 25-07-2004 13:12 » 

Funkziya "fprintf"-vozvrashaet kolichestvo znakov otpechatannyh v file i esli byla oshibka togda -1.Togda che za hernya vetom kode:
---------------------------------------------------------------------------
typedef enum{Success,Fail}Result;
...
if(fprintf(fd,"%d,%s,%d",dt->day,dt->month,dt->year)==EOF)
  return Success;
else
  return Fail;
---------------------------------------------------------------------------
eto znachit esli byla oshibka:return Success;
 esli net:return Fail;
sho-to ya ne vkurivau...moje kto pomojet???Pls...
Zaranee spasibo!!!
Записан
Алексей++
кот глобальный и пушистый
Глобальный модератор

ru
Offline Offline
Сообщений: 13


« Ответ #1 : 25-07-2004 19:22 » 

int fprintf(FILE *f, const char *fmt, ...);
возвращает количество записанных символов, а в случае неудачи - EOF, который и есть (-1)
EOF==-1

насколько я понимаю,
Цитата

typedef enum{Success,Fail}Result;

присвоит константам такие значения:

Success==0;
Fail==1;

то есть в случае успеха будет возвращён 0, в случае провала 1
Записан

Anonymous
Гость
« Ответ #2 : 25-07-2004 20:07 » 

Алексей1153, No v takom sluchae "enum{Success,Fail}Result;"po defaultu Success =0 Fail=1-eto raz
ty naverno ne ponyal moy vopros.Ya imel v vidu chto kogda u menya takoy kod:
---------------------------------------------------------------------------------------------
if(fprintf(fd,"%d,%s,%d",dt->day,dt->month,dt->year)==EOF)
return Success;
else
return Fail;
----------------------------------------------------------------------------------------------
ego smysl (esli ya pravil'no ponyal)chto ne bylo otpechatano den',mesyaz,god-togda return Success;esli otpechatano-togda return Fail;Не понял
Записан
Алексей++
кот глобальный и пушистый
Глобальный модератор

ru
Offline Offline
Сообщений: 13


« Ответ #3 : 26-07-2004 06:38 » 

получается так Улыбаюсь

а если заменить == на != , будет работать наоборот
Записан

rapa
Гость
« Ответ #4 : 26-07-2004 07:33 » 

Алексей1153, spasibo
Записан
Страниц: [1]   Вверх
  Печать  
 

Powered by SMF 1.1.21 | SMF © 2015, Simple Machines