powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / C++ [игнор отключен] [закрыт для гостей] / Структуры в borland c++ 3.1
12 сообщений из 12, страница 1 из 1
Структуры в borland c++ 3.1
    #34171891
frodo911
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Подскажите пожалуйста как в borland c++ 3.1 записать структуру в файл ( удаление, поиск ),
если можно пример.
...
Рейтинг: 0 / 0
Структуры в borland c++ 3.1
    #34172058
XED
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
я думаю, есть миллион с половиной способов... :) нужно просто проявить сообразительность...
ну, например, так:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
struct MYSTRUCT {
  int a, b;
  char str[ 10 ];
  };
...
void save (MYSTRUCT* s) {
  fprintf (file, "%d %d %s\n", s->a, s->b, s->str);
}
/* в каждой новой строке описывается новый объект, каждое поле которого указывается через ппробел; внутри строки тоже могут быть ппробелы, но т.к. она пишется в конце - это не важно
если же строк должно быть внутри объекта больше, то можно придумать что нибудь ещё... */

это пример написанный на шару и потому прямо так, с ходу может не работать
главное - смысл!
...
Рейтинг: 0 / 0
Структуры в borland c++ 3.1
    #34172067
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
XED frodo911...( удаление, поиск )..
fprintf (file, "%d %d %s\n", s->a, s->b, s->str);

(зевая)

Я думаю, студент собирается работать со структурами на бинарном уровне.

150$
...
Рейтинг: 0 / 0
Структуры в borland c++ 3.1
    #34172479
Фотография Aklin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton XED frodo911...( удаление, поиск )..
fprintf (file, "%d %d %s\n", s->a, s->b, s->str);

(зевая)

Я думаю, студент собирается работать со структурами на бинарном уровне.

150$

20$
...
Рейтинг: 0 / 0
Структуры в borland c++ 3.1
    #34172505
Фотография Ruslan.Isbarov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
XEDя думаю, есть миллион с половиной способов... :) нужно просто проявить сообразительность...
ну, например, так:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
struct MYSTRUCT {
  int a, b;
  char str[ 10 ];
  };
...
void save (MYSTRUCT* s) {
  fprintf (file, "%d %d %s\n", s->a, s->b, s->str);
}
/* в каждой новой строке описывается новый объект, каждое поле которого указывается через ппробел; внутри строки тоже могут быть ппробелы, но т.к. она пишется в конце - это не важно
если же строк должно быть внутри объекта больше, то можно придумать что нибудь ещё... */

это пример написанный на шару и потому прямо так, с ходу может не работать
главное - смысл!

Вообще то правильнее будет так:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
struct MYSTRUCT s;
FILE* f;

Запись:

fwrite (&s, sizeof(s),  1 , f);

Чтение:

fread(&s, sizeof(s),  1 , f);

...
Рейтинг: 0 / 0
Структуры в borland c++ 3.1
    #34172508
Фотография Ruslan.Isbarov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Блин, забыл

10$
...
Рейтинг: 0 / 0
Структуры в borland c++ 3.1
    #34172525
Фотография Aklin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ruslan.Isbarov XEDя думаю, есть миллион с половиной способов... :) нужно просто проявить сообразительность...
ну, например, так:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
struct MYSTRUCT {
  int a, b;
  char str[ 10 ];
  };
...
void save (MYSTRUCT* s) {
  fprintf (file, "%d %d %s\n", s->a, s->b, s->str);
}
/* в каждой новой строке описывается новый объект, каждое поле которого указывается через ппробел; внутри строки тоже могут быть ппробелы, но т.к. она пишется в конце - это не важно
если же строк должно быть внутри объекта больше, то можно придумать что нибудь ещё... */

это пример написанный на шару и потому прямо так, с ходу может не работать
главное - смысл!

Вообще то правильнее будет так:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
struct MYSTRUCT s;
FILE* f;

Запись:

fwrite (&s, sizeof(s),  1 , f);

Чтение:

fread(&s, sizeof(s),  1 , f);



открыл бы для виду...
...
Рейтинг: 0 / 0
Структуры в borland c++ 3.1
    #34172531
Фотография Ruslan.Isbarov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Aklinоткрыл бы для виду...

Чего?
...
Рейтинг: 0 / 0
Структуры в borland c++ 3.1
    #34172537
Фотография Ruslan.Isbarov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Aklin

Торможу :)

Ну думаю автор треда файл то умеет открывать :)... Но если все так плохо:

Код: plaintext
1.
2.
3.
4.
if ((f = fopen("file.ext", "r")) == NULL)
{
   // кердык
}
...
Рейтинг: 0 / 0
Структуры в borland c++ 3.1
    #34172541
Фотография Ruslan.Isbarov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Для записи:

Код: plaintext
1.
2.
3.
4.
if ((f = fopen("file.ext", "w")) == NULL)
{
    ...
}
[/quot]
...
Рейтинг: 0 / 0
Структуры в borland c++ 3.1
    #34172734
XED
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ruslan.Isbarov
Вообще то правильнее будет так:
Код: plaintext
1.
2.
3.
4.
5.
6.
struct MYSTRUCT s;
FILE* f;
Запись:
fwrite (&s, sizeof(s),  1 , f);
Чтение:
fread(&s, sizeof(s),  1 , f);

а если в срукттуре MYSTRUCT случится оказия и появится поле char*? или не дай боже void*?
...
Рейтинг: 0 / 0
Структуры в borland c++ 3.1
    #34172749
Фотография Ruslan.Isbarov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
XEDа если в срукттуре MYSTRUCT случится оказия и появится поле char*? или не дай боже void*?

Ну в вышеприведенном коде оказии еще не оказалось. А вообще fprintf(...) мне самому больше нравится, однако fwrite(...) / fread(...) ИМХО для новичка нагляднее... :)
...
Рейтинг: 0 / 0
12 сообщений из 12, страница 1 из 1
Форумы / C++ [игнор отключен] [закрыт для гостей] / Структуры в borland c++ 3.1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]