![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Регистрация: 07.11.2011
Сообщений: 3
|
![]()
Дана задача - Создание базы данных студентов и построчное её редактирование по запросу с пред просмотром редактируемой строки.
У меня такая вот проблема : почему у меня выдает баг после заполнения файла перед его выводом на экран , почему у меня не работает функция strstr, которая ищет номер редактируемой строки, с последующим её выводом на экран и как реализовать замену старой строки на новую? код программы : PHP код:
|
![]() |
![]() |
![]() |
#2 |
Старожил
Регистрация: 16.12.2011
Сообщений: 2,329
|
![]()
сразу два момента:
1. Вот здесь ты память выделяешь: Код:
2. Ты выделяешь память под kilkist элементов. А чему равно это количество? Где у тебя в программе есть строчка, которая инициализирует kilkist адекватным значением? Код:
Код:
Дальше не всматривался. Но есть подозрение, что в твоём файле по итогу будит лежать не те данные, которые ожидались |
![]() |
![]() |
![]() |
#3 |
Регистрация: 07.11.2011
Сообщений: 3
|
![]()
дописал в конец условия
Код:
Код:
количество kilkist я ввожу из клавиатуры Код:
Вопрос не в этом а в том почему strstr не работает а компилятор выдает ошибку "отсутствуют экземпляры перегруженная функция strstr " |
![]() |
![]() |
![]() |
#4 |
Старожил
Регистрация: 16.12.2011
Сообщений: 2,329
|
![]()
Посмотри, какие данные нужно кормить функции strstr:
http://www.cplusplus.com/reference/c...string/strstr/ И посмотри, какие данные ты сам ей скармливаешь. int ID; int s; То есть, функции, которая принимает на входе две строки, ты пытаешься скормить два числа. Зачем? Попробуй сделать так: Код:
|
![]() |
![]() |
![]() |
#5 |
Регистрация: 07.11.2011
Сообщений: 3
|
![]()
Спасибо большое _Bers! впринцыпе заработало только я написал так :
Код:
Теперь всплывает такой вопрос : можно объяснить какой принцип и как реализовать замен строки которую оно нашло ?? а то я даже не подозреваю как это сделать |
![]() |
![]() |
![]() |
#6 | |
Старожил
Регистрация: 16.12.2011
Сообщений: 2,329
|
![]() Цитата:
1. В начале работы загружаем всю базу данных в память целиком (благо, она у тебя маленькая получается). После успешной загрузки, можно вообще файл закрыть за ненадобностью. 2. Все манипуляции с данными базы данных теперь происходят уже с массивом данных, который в памяти. Там мы можем что захотим поменять, удалить, добавить, и тд. 3. По требованию сохранить изменения базы - снова открываем файл, и перезаписываем его целиком тем, что у нас есть в памяти. После чего снова закрываем файл. Работать с памятью удобнее и быстрее, чем мурыжить бинарник на HDD |
|
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Создание и редактирование текстового файла | sasha0123 | Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM | 0 | 04.12.2010 00:00 |
VS/C++ считывание из файла построчно | lbs | Помощь студентам | 0 | 06.06.2010 13:53 |
Чтение файла построчно | aciiiD | Компоненты Delphi | 11 | 26.08.2009 16:36 |
Определения частоты пары соседних символов в каждой строке и формирования файла частот построчно | ивт | Паскаль, Turbo Pascal, PascalABC.NET | 0 | 05.12.2008 20:09 |
Типизированные файлы.Создание, удаление, редактирование, сортировка записей типизированного файла.Паскаль | Студент Шиза | Помощь студентам | 6 | 08.12.2007 13:41 |