Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

RusFAQ.ru: Программирование на C / C++


РАССЫЛКИ ПОРТАЛА RUSFAQ.RU

/ КОМПЬЮТЕРЫ И ПО / Языки программирования / C/C++

Выпуск № 426
от 03.06.2006, 19:35

Администратор:Калашников О.А.
В рассылке:Подписчиков: 334, Экспертов: 47
В номере:Вопросов: 3, Ответов: 5


Вопрос № 44504: Здравствуйте. Ответьте, пожалуйста на вопрос: например, у меня в программе есть три переменные (a,b,c). Нужно вывести переменную a в файл rez1.txt, b в rez2.txt и c в rez3.txt. Как это сделать? Ведь для одного файла вывода FILE *fout fout=fopen(...
Вопрос № 44527: здравствуйте.Я создала 2 линейных однонаправленных списка. Но не получается у меня соединить их в один,включая то элемент из одного, то из другого списка....
Вопрос № 44550: Здарвствуйте, уважаемые эксперты.чео-то у меня недополучается в моей задаче.Дан текстовый файл, в кот.содержатся данные о ноутбуках. мне надо считать эти данны(в часности размеры: ширина*высота*длина)и выполнить определенные действия с ними.Все получ...

Вопрос № 44.504
Здравствуйте. Ответьте, пожалуйста на вопрос: например, у меня в программе есть три переменные (a,b,c). Нужно вывести переменную a в файл rez1.txt, b в rez2.txt и c в rez3.txt.
Как это сделать? Ведь для одного файла вывода FILE *fout fout=fopen(“rez.txt,”w”). А как сделать несколько файлов вывода? Заранее спасибо.
Отправлен: 28.05.2006, 19:46
Вопрос задал: Commandos (статус: Посетитель)
Всего ответов: 2
Мини-форум вопроса >>> (сообщений: 1)

Отвечает: Селиванов Александр Владимирович
Здравствуйте, Commandos!

вот так:

FILE *file1, *file2, *file3;
file1 = fopen("rez1.txt", "w");
file2 = fopen("rez2.txt", "w");
file3 = fopen("rez3.txt", "w");
Ответ отправил: Селиванов Александр Владимирович (статус: 2-ой класс)
Ответ отправлен: 28.05.2006, 20:03

Отвечает: Решетник Д
Здравствуйте, Commandos!
А что Вам мешает сделать так
FILE *fa, *fb, *fc;
fopen
fopen
fopen
.....
или поочередно писать файл, закрывать и открывать новый через одну переменную.
---------
Жизнь коротка, чтобы писать на ассемблере
Ответ отправил: Решетник Д (статус: 7-ой класс)
Ответ отправлен: 28.05.2006, 20:07


Вопрос № 44.527
здравствуйте.Я создала 2 линейных однонаправленных списка. Но не получается у меня соединить их в один,включая то элемент из одного, то из другого списка.

Приложение:

Отправлен: 29.05.2006, 00:35
Вопрос задала: Nisa (статус: Посетитель)
Всего ответов: 1
Мини-форум вопроса >>> (сообщений: 9)

Отвечает: Zitz
Здравствуйте, Nisa!

Как-то все сложно в Вашей программе, я все переделал, суть попытался оставить...
CListSheet - лист списка
Конечно можно было бы сделать в CListSheet свойства открытыми полями, но раз уж Вы настаиваете, то доступ к ним через Get/Set
CList - сам список
WriteString - аналогично Вашей sozd, только проще
LeftRead - аналогична Вашей
AddChar - добавляет лист к списку в конец, у Вас нет, но я ввел для удобства

Так...
Вся хитрость сливания двух списков заключается в переставлении указателей листов, как по очереди переставлять пример в приложении. А вот если нужно просто один список в конец другого добавить, то последний элемент списка 1 должен указывать на начало списка 2, вот и вся хитрость.

Приложение:

---------
Успех неизбежен

Ответ отправил: Zitz (статус: Студент)
Ответ отправлен: 29.05.2006, 19:18


Вопрос № 44.550
Здарвствуйте, уважаемые эксперты.чео-то у меня недополучается в моей задаче.Дан текстовый файл, в кот.содержатся данные о ноутбуках. мне надо считать эти данны(в часности размеры: ширина*высота*длина)и выполнить определенные действия с ними.Все получается, если числа в файле написаны через пробел.Но если числа перечисляются через "*",чухня какая-то получается.Сначала я думала искать в файле знак "*", и заменять его на пробел, но как-то получилась некрасиво.Может быть существует как.-нибудь другой способ?
p.s.мне подсказали, чтоможно при нажатии Ctrl+F9 поменять на пробел, но дело в том, что мне нужно послать контрольную с этой работой и если такой способ годится, даже не представляю, как мне его описать на бумаге.
Отправлен: 29.05.2006, 10:56
Вопрос задала: NATTY (статус: Посетитель)
Всего ответов: 2
Мини-форум вопроса >>> (сообщений: 0)

Отвечает: Zitz
Здравствуйте, NATTY!

Я предлагаю такой вариан (вм. приложение)т, содержимое файла 2.txt:
123*321*435
Настроить шаблон в fscanf можно практически под любые данные, если не сработает, то как вариант считать строку вида указанного наверху в строковую переменную и использовать функцию sscanf с таким же шаблоном.

Приложение:

---------
Успех неизбежен

Ответ отправил: Zitz (статус: Студент)
Ответ отправлен: 29.05.2006, 17:46
Оценка за ответ: 5

Отвечает: Vest
Здравствуйте, NATTY!
Здесь не указано, какими средствами открывался файл, могу ещё посоветовать использование файлового потока (fstream). Вызывай несколько раз подряд функцию getline(char*, int, char = ' ') (или get). Последний аргумент - разделитель (обычно эта функция используется, чтобы считать всю строку до возврата карретки, но можно использовать и '*').
---------
Халявы не бывает
Ответ отправил: Vest (статус: 2-ой класс)
Ответ отправлен: 01.06.2006, 00:27


Отправить вопрос экспертам этой рассылки

Приложение (если необходимо):

* Код программы, выдержки из закона и т.п. дополнение к вопросу.
Эта информация будет отображена в аналогичном окне как есть.

Обратите внимание!
Вопрос будет отправлен всем экспертам данной рассылки!

Для того, чтобы отправить вопрос выбранным экспертам этой рассылки или
экспертам другой рассылки портала RusFAQ.ru, зайдите непосредственно на RusFAQ.ru.


Форма НЕ работает в почтовых программах The BAT! и MS Outlook (кроме версии 2003+)!
Чтобы отправить вопрос, откройте это письмо в браузере или зайдите на сайт RusFAQ.ru.


© 2001-2006, Портал RusFAQ.ru, Россия, Москва.
Идея, дизайн, программирование: Калашников О.А.
Email: adm@rusfaq.ru, Тел.: +7 (926) 535-23-31
Авторские права | Реклама на портале
Версия системы: 4.34 от 01.06.2006
Яндекс Rambler's Top100

В избранное