Jsx707
Я не пойду, ты открываешь файл на чтение чтобы туда что-то записать? Ну и дескриптор файла идёт первым. И что будет, если запись не прошла?
Да , я ошибся только в том ,что файл на чтение открыт , это чисто для проверки , надо его потом на запись открыть
Andrii
В c# тоже
Запись в файл зафейлилась, что будет?
Артур
Какой бред
когда мне было лет 17-18 я делал в N *** N больше чем это было возможно
SexNbaKef
Andrii
И как запись пойти не может? Если файл недоступен , то fp вернёт NULL
Файл был на флешке. Потом флешку физически вынули
Andrii
Что значит зафейлилась?
Ну места не диске нету. Вот нельзя записать в файл по неведомой причине
Артур
А сейчас что мешает?
возраст и опыт прошлых ошибок
Andrii
Ошибка, наверное, хз
Ошибка? Исключение? Которое роняет аппликуху?
Jsx707
Ну хорошо, а если fprintf вернул ошибку, как обрабатывать?
Как-то так if((fprintf("hello" , fp))==NULL) { printf ("error! Can't find source with file!"); }
SexNbaKef
Beginner
подскажите пж по Python что такое регулярные выражения?
Igor
Ошибка? Исключение? Которое роняет аппликуху?
ох уж эти эмбдед разработчики :) ну наебнуться и хуй с ним запуститься новый контейнер :)
Erik
возраст и опыт прошлых ошибок
Если тебя напрягает возраст, просто представь, что я проживу на 5 лет меньше тебя, и получится, что мы на равных))
Jsx707
fprintf возвращает число записанных байт
Ну можно наверное эту функцию в переменную поместить
Jsx707
Разве нет?
Артур
Если тебя напрягает возраст, просто представь, что я проживу на 5 лет меньше тебя, и получится, что мы на равных))
увы, это так не работает в 17-18 лет ты можешб включиться и сутками не спать ради идеи или бабы, лишь ее добиться
Maksim Pozharskiy
подскажите пж по Python что такое регулярные выражения?
это не по питону, это общий термин. Регулярные выражения нужны что бы обрабатывать текст (строки), проверять совпадает ли строка с выражением, искать что то и тд
Igor
Обработка ошибок это хуйня насчет которой лучше не спорить особенно с синьором :) он всеравно найдет к чему доебаться :)
Артур
в 22 года, ты такой ну и хуй с тобой)
Erik
Работакшь или нет? Есть работа?
Артур
табу на личные темы
Erik
табу на личные темы
Нихера себе)))
wwwcpsszxmm6
в 22 года, ты такой ну и хуй с тобой)
не от возраста зависит. тебе просто не интересно то, чем ты занимаешься
Andrii
Ну можно наверное эту функцию в переменную поместить
В принципе есть проверка, были ли ошибки в потоке. И если были, то что-то делать... В любом случае там есть тонкие вопросы, и это не касаясь использование фичей файловой системы через ioctrl
Erik
табу на личные темы
Попробуй его нарушить значит))
Igor
Такой вопрос , а NULL возвращают только дескрипторы?
нет можешь ты вернуть :) кто тебе запретит? :)
Beginner
я понял что такое статические методы класса, но я не понял что такое абстрактные методы
Igor
я понял что такое статические методы класса, но я не понял что такое абстрактные методы
ты сейчас пытаешься задавать вопросы которые объясняют после прочтения целой книжки,а то и не одной на такие вопросы на форуме не отвечают иди учись
Jsx707
Не понял контекста вопроса
Ну в каких случая можно вернуть NULL , допустим в соучае с fprintf я не имею права вернуть NULL , а в каких случаях можно? Зависит ли это от типа функции?
Jsx707
fprintf возвращает int, а не пойнтер
То есть можно проверить вернуло ли оно 0?
Jsx707
Ааа , или -1?
Jsx707
Он же в случае неудачи скорее всего вернёт -1
Igor
а что это все таки?
это функции которые не реализованы у класса потому что сам класс абстрактный :)
Andrii
я понял что такое статические методы класса, но я не понял что такое абстрактные методы
Это примерно как в кафешке резервируют столик. Типа сесть нельзя, но там никто не сидит. Но когда-то придёт.
Andrii
То есть можно проверить вернуло ли оно 0?
Ну.... нуль понятно. Но в случае fprintf ошибкой будет любое число, меньше ожидаемого. Например, printf(fp, "Hello\n") вернуло 4. Это означает, что "Hell" записано, а остальное зафейлилось
Beginner
т.е. это типо что не может быть реализовано сейчас но в будущем будет?
Jsx707
Ааааааааа , тогда можно сравнить переменные
Beginner
а зачем они нужны?
Andrii
т.е. это типо что не может быть реализовано сейчас но в будущем будет?
Примерно. В общем виртуальная функция, которая просто роняет исключение при вызове просто
Jsx707
Значение от юзера хранится в переменной , все байты хранятся в ней и если результат fprintf меньше того ч который хранится в переменной , значит =провал
Igor
а зачем они нужны?
почитай про абстрактные классы
Andrii
а зачем они нужны?
Когда ты хочешь убедится, что класс наследние перекроет этот метод. И хочешь принудить чела к этому
Igor
да чо вы доебались до Артура н ухочет он тупить в питон имеет полное право
Beginner
а записыватся это для программиста для того чтобы он не забыл?
Igor
о чем бы мы еще тут разговаривали если бы он не тупил в чат :)
Andrii
Правильно же?
Я не понял. fprintf("Test message: %s\n", "42"); Вот как тут посчитать сколько?
Jsx707
Я не понял. fprintf("Test message: %s\n", "42"); Вот как тут посчитать сколько?
Смотри , например char text [300]; getc(text); if((fprintf (text , fp)) <text) { return -1; }
Andrii
Смотри , например char text [300]; getc(text); if((fprintf (text , fp)) <text) { return -1; }
Жуть... И параметры переставлены местами, и написано так как писать не следует, и сравнение несравнимого.
Jsx707
Жуть... И параметры переставлены местами, и написано так как писать не следует, и сравнение несравнимого.
Ну так текст от юзера хранится в переменной text Условно там определённое количество байт , в случае удачи это количество и будет записано в файл и если это кол-во меньше ожидаемого надо вернуть провал
wwwcpsszxmm6
на любую цифру срабатывает строчка дефолт, что не так? class Start { public static void main(String[] args) throws IOException { int month = (int)System.in.read(); String monthString; switch (month) { case 1: monthString = "Январь"; break; case 2: monthString = "Февраль"; break; case 3: monthString = "Март"; break; case 4: monthString = "Апрель"; break; case 5: monthString = "Май"; break; case 6: monthString = "Июнь"; break; case 7: monthString = "Июль"; break; case 8: monthString = "Август"; break; case 9: monthString = "Сентябрь"; break; case 10: monthString = "Октябрь"; break; case 11: monthString = "Ноябрь"; break; case 12: monthString = "Декабрь"; break; default: monthString = "Не знаем такого"; break; } System.out.println(monthString); } }
Jsx707
А параметры местами вроде можно переставлять , я точно не припоминаю
Mikhail
я понял что такое статические методы класса, но я не понял что такое абстрактные методы
Класс «животное», абстрактный метод для животного - «издавать звук». Для класса «собака», который наследует класс «животное», имплементацией будет «гав-гав», для «кошки» - «мяу-мяу». Абстрактный же метод не имеет имплементации, ибо ты хз, какое там животное, как ты его можешь описать?
Andrii
getc(text) ну... int getc(FILE *stream); fgetc() reads the next character from stream and returns it getc() is equivalent to fgetc() except that it may be implemented as a macro
Andrii
fprintf (text , fp) параметры на выворот и надо fprintf(fp, "%s", text);
Andrii
Сравнимать целое число fprintf и указатель text... Ну такое...