Один из лучших каналов. Огромное спасибо за уроки)
@SimpleCodeIT6 жыл бұрын
Пожалуйста!
@nap0le0nb0naparte77 жыл бұрын
Сергей спасибо за очень интересный урок!
@roma_gb7 жыл бұрын
Спасибо Вам за уроки, очень помогают, продолжайте в том же духе)
@МихаилКрылов-п5ч3 жыл бұрын
Теперь я самый умный в группе. Спасибо больше, с радостью смотрю ваши уроки. Просто и понятно.
@КонстантинБессмертный-ф5ф3 жыл бұрын
Сергей, я не знаю как ты это делаешь но ты единственный чьи уроки я с легкостью понимаю. Спасибо.
@ИнкараТусупханова4 жыл бұрын
Спасибо урок, очень доступно для понимания
@pavelios35776 жыл бұрын
Спасибо за видео.
@SeshAlex6 жыл бұрын
Спасибо за урок! Лайкос! Ща буду соображать как вводить строки с пробелами...
@СашаКузнецов-г9х7 жыл бұрын
Спасибо за видео, Серёга!
@ЕвгенийУсанов-ш5к5 жыл бұрын
Давным давно мучился с русскими буквами и тут готовое решение! Спасибо
@andrewbistroff11996 жыл бұрын
Спасибо за Урок!
@оксидводорода24 жыл бұрын
Если вы захотите записывать сообщение с пробелами используя после cin... getline(cin, ...), перед getline(cin,...) очистите буфер cin.ignore(); иначе у вас первая строчка не будет записываться
@homkamorkovkin60873 жыл бұрын
Классно объясняешь: кратко, ясно и по делу.
@segars9604 Жыл бұрын
Спасибо за бесценный труд!)
@cyberaea4 жыл бұрын
Большое вам спасибо за урок, очень помогли с школьным проектом, весь интернет перерыл, так и не нашёл тот самый параметр app, а у вас в видео всё сразу! Короче спасибо, с меня лайк)
@Charapaha5 жыл бұрын
для функции system есть команда chcp 1251 дающая возможность верно работать консоли с русским алфавитом без всяких левых библиотек, а еще есть оператор switch для удобства работы с выборкой
@shag-foal2 ай бұрын
if elseif куда удобнее в таком случае, хотя там можно обойтись и одним if когда всего нужно считывать 2 символа
@ЯЗдесь-ъ5ф6 жыл бұрын
Спасибо!!
@DmitryDolganov5 жыл бұрын
Сергей, спасибо!
@ОльгаЕгорцева-й2н7 жыл бұрын
спасибо огромное!!!
@Ermine8827 жыл бұрын
Очередное спасибо за урок.
@Antonov_Ivan.11 ай бұрын
Спасибо за урок!
@зайка-щ9о Жыл бұрын
Спасибо !!!😊😊
@БогданаДана-у4р4 жыл бұрын
Спасибо за ваш труд!
@vladalu97946 жыл бұрын
Спасибо бро за контент!
@Viktor_Kardakov Жыл бұрын
Ещё раз напишу, видео очень нравятся!
@KurpatovInstagram7 жыл бұрын
Благодарю! В принципе я проблему уже решил, но интересно было бы увидеть вашу реализацию. Проблема такая: как организовать поиск в файле, с выводом нужной строчки? Т.е., например, мы записываем в файл номер, имя и зп работников. Например в таком виде: 12 Андрей 3000р 15 Олег 2000р и т.д. Нам нужно чтобы пользователь ввел номер конкретного работника, а ему вывелась вся информация (имя и зп этого конкретного работника).
@silentshout67527 жыл бұрын
Лешков Владислав расскажи как решил
@KurpatovInstagram7 жыл бұрын
Если кратко, то во время записи в файл, после ввода номера сотрудника, записываем '\0'. (fout
@silentshout67527 жыл бұрын
Лешков Владислав ну в принципе нормально. Спасибо
@Ginematic4 жыл бұрын
@@KurpatovInstagram А если зп будет 1500 и идентификатор будет другой? А мы как раз ищем 15, тогда компилятор нам эту строку и выведет. Он ведь место не учитывает.
@Jessica_Cat-l1v7 ай бұрын
😆 у меня весь код на С++, пока не нашёл канал Сергея, тоже состоял из "Моих любимых крокозябр"
@АндрейМиненко-ц3з6 жыл бұрын
Очередное спасибо!
@yourownazog80696 жыл бұрын
Хочу отметить, что на Linux'e не нужно менять кодировку консоли для нормального отображения кириллицы. Чтение и запись текстовых файлов в кодировке UTF-8 работает безо всяких преобразований, а напрямую. На Windows дичайшие проблемы с этим!!
@TheWladberlin5 жыл бұрын
А под Линукс VisualStudio ставися??
@mykolahureiev64664 жыл бұрын
@@TheWladberlin увы((
@РусланКарнеенко7 ай бұрын
Спасибо
@alonedany Жыл бұрын
Организовать файл записей PRICE, содержащих следующие поля: название товара, название магазина, в котором продаётся товар, стоимость товара в гривнах. Написать программу, выполняющую следующие действия: Ввод с клавиатуры данных о нескольких товарах, вывод на экран информации о товаре, название которого введено с клавиатуры, если таких товаров нет, выдать соответствующее сообщение.
@unrealengineruseng95834 жыл бұрын
Огромное спасибо !)
@ЮраДудак-н7у4 жыл бұрын
#include #include #include #include #include using namespace std; int key = 0; bool stop; int menu(); void Write_Reed(); int main() { setlocale(LC_ALL,"ru"); while (!stop) { menu(); Write_Reed(); } cout
@аой-в4ы3 жыл бұрын
спасибо!!
@Роман-т5е6с2 жыл бұрын
Здравствуйте, а можете ли вы скинуть условия этой задачи?
@billyherrington36272 жыл бұрын
Спасибо большое!
@Вадим-ц9я8с2 жыл бұрын
Для того, чтобы не менять каждый раз кодировку консоли....и не использовать setlocale.....есть шикарная команда для виндовс system("chcp 1251 > 0"); работает и на ввод и на вывод данных....понимает и кирилицу и латиницу
@sleepyNovember_project9 ай бұрын
change code page значит Ну да, тоже читал где-то, что это те же самые SetConsoleCP и SetConsoleOutputCP только в одном флаконе
@МихасСупре2 жыл бұрын
Отличненько!
@stanislavmunteanu30456 жыл бұрын
Сергей, а что бы вы посоветовали насчет работы с директориями? Есть в fstream просмотр/удаление/переименование, или же пользоваться унаследованными от С?
@ortemx6 жыл бұрын
спасибо за уроки! не подскажешь, как передать файл в функцию, например ф-ция создания файла.
@ВітяКоміссаров2 жыл бұрын
спасибо
@ВиталийСахно-ъ1р5 жыл бұрын
С украинскими символами происходит ошибка при печатании буквы "i". На одном из сайтов я нашел решение этой проблемы SetConsoleCP(1251); SetConsoleOutputCP(1251); ну и конечно же подключение #include "windows.h" . При таких установках нет необходимости при обратном выводе на консоль преобразовывать вывод в кодировку 866. Главное в свойствах консоли установить не точечные шрифты а, например Consolas.
@Decurion7 жыл бұрын
А будете говорить о сортировке масивов?
@YoYo-dq6on4 жыл бұрын
Здравствуйте! Страниц 50 в интернете просмотрел, так и не понял, как с помощью getline (или другой функции) ввести строку с пробелами в файл. Помогите, пожалуйста.
@mako-s84d375 жыл бұрын
Полезное видео, автору лайк! Подскажите, при классе fstream можно ли сделать, чтобы при отсутствии файла он не создавал новый?
@NikolayForostiy5 жыл бұрын
Можно ли всегда использовать getline? Еще когда начал записывать строки, одну за другой, столкнулся с проблемой, как я пронял заполнения потока cin. Какая функция, на ваш взгляд была бы подходящая для очистки потока. Я, погуглив нашел #inlude int istream::sync();
@kelvin744710 ай бұрын
cin.ignore()
@kaynsolo6 жыл бұрын
+100500 лайков)
@yaevgen4592 ай бұрын
У кого тоже указатель остался при чтении построчно в конце файла допишите fs.seekg(0, ios::beg); перед циклом )
@yugenepopov2014 Жыл бұрын
thx
@TheWladberlin4 жыл бұрын
Еще бы хотелось бы увидеть пример работы с текстовым файлом не только с кракозябрами, но также и с обычным читабельным.
@BrownAleks4 жыл бұрын
6:52 а было бы не лишним посмотреть простенькое меню в вашем исполнении. Потому как в пройденных темах полноценных обзоров полезных функций, часто используемых библиотек, так и не было. =(
@eugenesavenko15025 жыл бұрын
Видеоуроки хорошие, спасибо за них, но как с файла выдалить данные?
@амирханшамгонов-р5д4 жыл бұрын
while(true) { cout
@КонстантинФерафонтов-д3п4 жыл бұрын
Лайк
@NoOneNOW2 жыл бұрын
По моему я единственный в комментариях, кто помнит давний урок про оператор "Switch". Реально, почему нельзя было использовать его? Зачем делать через ифы?
@bohkov6025 Жыл бұрын
Кому как, If тупо привычнее. Но к switch нужно default прописать, это в контексте видеоролика минус.
@sharkyinc94 жыл бұрын
Доброго времени суток, не подскажите а как скажем удалить или перезаписать запись с определенной строки ?
@Vali98095 жыл бұрын
Сергей привет во первых огромное спасибо за отличные уроки. И задам вопрос по с# если ты конечно в таком же совершенстве его знаешь как с++, как считать файл txt построчно в режиме реального времени или потоками или асинхронно. Заранее спасибо.
@TheWladberlin5 жыл бұрын
У него есть уроки по шарпу, вопрос там надо задавать
@stensej68414 жыл бұрын
Сергей Спасибо за урок ! Но тут такая проблема вроде все сделал как на уроке вы показывали , но при нажатии два считывается только одно сообщение.. А я их написал уже 10
@stensej68414 жыл бұрын
Все исправил , проблема была что в цикл while напихал лишнего , привык просто работать с for .
@ВалераГолубков-ж3э6 жыл бұрын
ну с 1 словом ввод понятен, а как вводить словосочетания или предложения? по такому вводу в файл сохраняется только первое слово
@glebko7324 жыл бұрын
Через getline
@mykolahureiev64664 жыл бұрын
@@glebko732 не работает
@michaelmyers94134 жыл бұрын
Разобрался с проблемой. Сразу после того, как мы ввели value, нужно добавить cin.ignore(32767, ' '); Цитирую сайт ravesli: "...Оказывается, когда вы вводите числовое значение, поток cin захватывает вместе с вашим числом и символ новой строки. Так что, когда мы ввели 2, cin фактически получил 2 . Затем он извлёк значение 2 в переменную, оставляя (символ новой строки) во входном потоке. Затем, когда std::getline() извлекает данные для myName, он видит в потоке и думает, что мы, должно быть, ввели просто пустую строку! Хорошей практикой считается удалять из входного потока данных символ новой строки. Это можно сделать следующим образом: std::cin.ignore(32767, ' '); Если мы вставим эту строчку непосредственно после получения входных данных, то символ новой строки будет удален из входного потока, и программа будет работать должным образом."
@mykolahureiev64664 жыл бұрын
@@michaelmyers9413 интересное решение, нужно будет попробовать cin.ignore() без параметров, я этот способ очистки потока ввода использовал когда совмещал cin для получения int переменной и gets_s для строк в одной проге недавно.
@michaelmyers94134 жыл бұрын
@@mykolahureiev6466 А у Праты в книге написано, что достаточно просто дописать cin.get(); (отбрасывает символ новой строки) Но я не проверял.
@poseidon13464 жыл бұрын
10в степене безконечности лайков
@_skidrow430_43 жыл бұрын
В 2019 Visual Studio не работает SetConsoleCP() используйте system("chcp 1251");
@bestri4252 жыл бұрын
У меня даже так не работает. Пишет "указана недопустимая страница кодировки"
@ТимурАлиев-ц4ч4 жыл бұрын
system ("chcp 1251"); Вроде проще? Все правильно работает, не?
@igortarasov41524 жыл бұрын
Решение проблемы:"передать больше чем 1 слово через пробел" #include #include #include #include using namespace std; #define BUFF_SIZE 1024 setlocale(LC_ALL, "RU"); int y = ::MessageBox(NULL, L"Вы хотите продолжить? ", L"Программа, которая работает с файлом.", MB_YESNO | MB_ICONINFORMATION); if (y == 6) { char count; string str; bool bExit = false; while (!bExit) { cout
@КириллБутков-р2с6 жыл бұрын
у меня почему-то не работает fs.open(path, fstream::in | fstream::out | fstream::app);
@TheWladberlin5 жыл бұрын
библиотеку подключил?
@ridddlewrong4 жыл бұрын
@недорыжий кот думаю в этом у него и был подвох, поэтому не отписал)
@SaffronChipMCPE4 жыл бұрын
@halfRedCat а писал вообще под водой
@SaffronChipMCPE4 жыл бұрын
@halfRedCat а деняк нема, вот и в уме писал дальше код
@SaffronChipMCPE4 жыл бұрын
@halfRedCat ок, а зачем мне эта инфа?
@ddffsszvbhh4 жыл бұрын
Здравствуйте!А как отсортировать информацию с данного файла,если я для записи в файл использовал for?? for (int i = 0; i < 5; i++) { SetConsoleCP(1251); cin >> msg; fs
@mykhailomorhal21816 жыл бұрын
Спасибо) Сергей можете зделать хотья б однин урок об многопоточности.Чтобы понять принцип действия?)
@stiflerbing99164 жыл бұрын
Я тут застрял чутка. Допустим у меня есть три переменные и их сумма. Как записать в файл чисто переменную result? Ну и вообще как записывать переменные а не вводить?
@tapirskiy5 жыл бұрын
Ребятушки, может, кто то знает, как быть с вводом на русском на маке? какую то другую библиотеку подключать?
@donthomas72357 жыл бұрын
Здравствуйте!Вот у меня такая проблема...После установки Visual Studio,я первым делом создал тестовый проект...После на след.день,я не смог зайти не в мой "тестовый проект"Не создать новый...Вылезла ошибка- Не удалось прочесть файл проекта- --------------------------- Microsoft Visual Studio --------------------------- Не удалось прочесть файл проекта ConsoleApplication9.vcxproj. C:\Users\User\source epos\ConsoleApplication9\ConsoleApplication9\ConsoleApplication9.vcxproj(58,5): не удалось загрузить импортированный файл проекта "C:\Users\User\AppData\Local\Microsoft\MSBuild\v4.0\Microsoft.Cpp.Win32.user.props". Отсутствует корневой элемент.
@San_Dorado Жыл бұрын
Здравствуй!! У меня вопрос появился, а как присвоить значение TXT переменной int?? Очень важно Я не могу понять(
@sleepyNovember_project9 ай бұрын
Не знаю как напрямую, возможно ответ уже найден. Но есть функции перевода строки в численные: atoi(); - to int atof(); - to float atod(); - to double
@sleepyNovember_project9 ай бұрын
Уже третий день пытаюсь подружить стандартные инструменты C++ с UTF-8, хотя бы банально заставить его понимать UTF-8 символы до лимита wchar_t в 65536, сколько это там, хз, обычный char = 256 (255, если учитывать ноль), это скорее всего значит, что он может понимать код символа до 255, не более. Обычные ASCII-8bit таблицы столько и имеют. Но Unicode... Для него даже 65536 недостаточно, там ~1 миллион (больше) символов P.S. Точнее символы разбросаны до диапазана в примерно миллион кодов, так там в юникоде около ~150к символов
@sleepyNovember_project9 ай бұрын
Всё, научился делать так, чтобы консольное приложение могло создавать UTF-8 файл и нормально записывать в него текст, так же открывать UTF-8 и выводить из него текст в окно консоли. Но всё же пара нюансов осталась. На виндовс, поддерживаются не абсолютно все языки, а так же не поддерживаються emoji. Возможно на запись в файл и доступно всё, но не на отображение в окне консоли. На стандартном шрифте "Consolas", спокойно одновременно могут отображаться все буквы из данных языков: Hello, World! - English Привет, мир! - Russian Привіт, Світ! - Ukrainian Сәлем Әлем! - Kazakh Салом Ҷаҳон! - Tajik Բարեւ Աշխարհ! - Armenian Witaj, Świecie! - Polish ¡Hola, Mundo! - Spanish И многих других, основанных на латинице и кириллице Если поменять шрифт на SimSun-ExtB, будет гораздо больше, + Японский, корейский и ещё некоторые. Если кому понадобится, кодом поделюсь.
@str_0xdc6564 жыл бұрын
У меня почему-то когда ввожу цифру 1 и набираю сообщение больше 1 слова в файл записывается только первое слово.
@F_YT_bring_back_nicknames4 жыл бұрын
Слушай внимательнее, все что после пробела затирается
@timurortskhanov85276 жыл бұрын
Спасибо. А я вот записываю строку, но считывает только первое слово. Почему? Может кто ответит? Заранее спасибо.
@denyssalvatore95184 жыл бұрын
вы поняли в чём проблема?
@mykolahureiev64664 жыл бұрын
@@denyssalvatore9518 единственный вариант который я нашел, это для ввода использовать ofstream, тогда getline работает, если пытаться вставить getline в fstream::out то ничего не происходит
@denned41924 жыл бұрын
@@mykolahureiev6466 я тоже весь измучился, думал, только я не догоняю))
@michaelmyers94134 жыл бұрын
@@mykolahureiev6466 Если убрать менюшку, все работает. Не понимаю, с чем это связано и почему с менюшкой перестает работать
@michaelmyers94134 жыл бұрын
Разобрался с проблемой. Сразу после того, как мы ввели value, нужно добавить cin.ignore(32767, ' '); Цитирую сайт ravesli: "...Оказывается, когда вы вводите числовое значение, поток cin захватывает вместе с вашим числом и символ новой строки. Так что, когда мы ввели 2, cin фактически получил 2 . Затем он извлёк значение 2 в переменную, оставляя (символ новой строки) во входном потоке. Затем, когда std::getline() извлекает данные для myName, он видит в потоке и думает, что мы, должно быть, ввели просто пустую строку! Хорошей практикой считается удалять из входного потока данных символ новой строки. Это можно сделать следующим образом: std::cin.ignore(32767, ' '); Если мы вставим эту строчку непосредственно после получения входных данных, то символ новой строки будет удален из входного потока, и программа будет работать должным образом."
@buttermachine45036 жыл бұрын
А как, допустим, создать функцию для чтения из файла? Когда такая функция вызывается второй раз, то eof() не сбрасывает свое значение, как будто курсор находится в конце файла. Пробовал не добавлять fstream::app, но толку нет
@fillmalyshev93776 жыл бұрын
Файл закрывали?
@ДмитрийНормов-ю6ц2 жыл бұрын
@@fillmalyshev9377 да
@yaevgen4592 ай бұрын
fs.seekg(0, ios::beg);
@yaevgen4592 ай бұрын
fs.seekg(0, ios::beg);
@yaevgen4592 ай бұрын
fs.seekg(0, ios::beg);
@ОлегВещий-р1ф5 жыл бұрын
НЕ ПОНЯТНО ЧТО ГОВОРИТЕ НА 10:34, КАК ДОЛЖНА КОНСОЛЬ РАЗБИРАТЬ СИМВОЛЫ?
@TheWladberlin5 жыл бұрын
Он говорит: setlocale(LC_ALL, "rus") - не помогает, потому что... И .т.д.
@Viamsupervadetvadens6 жыл бұрын
up
@tupoy_ytub_uberi_psevdonim2 жыл бұрын
когда я засунул это в цикл вайл оно перестало работать
@vladkd88114 ай бұрын
Вывод из файла не получился, хоть и написал код один в один
@pavlotrotsiuk61795 жыл бұрын
0 дизлайков это достижение)
@aleksandrdrobyshev76234 жыл бұрын
Товарищи, скажите, а зачем мы явно указываем пространство имен в аргументах экземпляра класса fstream? Может я чего пропустил, но раньше мы просто писали например (path, app). Это связано с битовым ИЛИ?
@joja94134 жыл бұрын
in чтобы ты мог ввести текст, а out для выводы того что ты ввёл
@Kokurorokuko3 жыл бұрын
Как я понимаю, in, out и app - поля, которые находятся в public секции класса fstream; поэтому доступ из main к ним есть, однако надо указать пространство имён, ведь это не глобальные переменные, а поля класса.
@-pi_vo-5397Ай бұрын
ХВАААТИИИТ
@silentshout67527 жыл бұрын
Уже немного скучновато. Но познавательно. Хотелось бы уже создавать реальные настольные приложения. Пускай, обычный блокнот, где можно ввести текст и сохранить его в файл. Хотя бы это, но практика, которую можно где то применить. А то на теории далеко не уедешь.
@KurpatovInstagram7 жыл бұрын
что вам мешает, имея базу теории в 118 уроков и гугл, самому придумать и создать/скопировать чье-то приложение?
@silentshout67527 жыл бұрын
Лешков Владислав как? Нафиг мне консольные приложения в командной строке? Я хочу, чтобы программа выглядела красиво, с интерфейсом. А как это сделать? Как раз таки базу теории можно почитать в гугле, а практику попробуй найти. 118 уроков ни о чем, можно было просто книгу почитать по основам c++
@KurpatovInstagram7 жыл бұрын
Лично мне эти уроки очень помогают. Так что с тем, что они "ни о чем" категорически не согласен. А создать своё приложение с красивыми кнопочками и интерфейсом можно и на С#. Совместить его с С++. На эту тему тоже есть видео. Было бы желание
@silentshout67527 жыл бұрын
Лешков Владислав можно ссылку на видео?
@dml12076 жыл бұрын
Эй, это азы с++. Без них ты не создашь НИ ЧЕ ГО. В будущем он будем нам показывать OpenGL, и тогда уже будет графика, анимация, и игры, а это основы. Ты ещё не готов к играм, тебе ещё далеко до OpenGL, ты же не хочешь просто скопировать какой-то скрипт из хабрахабра, и дальше не знать, чё делать? Ты может хочешь научится самостоятельно делать игры, без копирования чужого?
@nomad95232 ай бұрын
Сидел около часа думал, как сделать так, чтобы при неправильном введенном значении (кроме 1 и 2) выдать ошибку, но продолжить работу программы, пока пользователь не введет правильное значение. Это было так элементарно) Зато хотя бы посидел, подумал, как реализовать. Какой никакой опыт. Вот код: fstream fs; fs.open(path,fstream::in | fstream::out | fstream::app); if (!fs.is_open()) { cout