Форум программистов, компьютерный форум, киберфорум
C/С++ под Linux
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.92/13: Рейтинг темы: голосов - 13, средняя оценка - 4.92
1 / 1 / 0
Регистрация: 21.04.2011
Сообщений: 31

Запись результатов в файл вместо вывода на консоль

24.12.2011, 20:35. Показов 2729. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Добрый вечер всем. Есть программа которая свой результат выводит в консоль. Мне необходимо сделать что бы результат в конце записывался в файл. Пробовал и с помощью fprintf но так не вышло. Кто знает-прощу помощи.
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
#include<stdio.h>
#include<sys/stat.h>
#include<sys/shm.h>
    
int main()
{
 
int segment_id;
char *shared_memory;
struct shmid_ds shmbuffer;
int segment_size;
const int shared_segment_size=0x6400;
segment_id=shmget(IPC_PRIVATE,shared_segment_size,IPC_CREAT|IPC_EXCL|S_IRUSR|S_IWUSR);
shared_memory=(char*)shmat(segment_id,0,0);
printf("\n Общая память приводится в адрес:%p",shared_memory);
shmctl(segment_id,IPC_STAT,&shmbuffer);
segment_size=shmbuffer.shm_segsz;
printf("\n Размер сегмента:%d",segment_size);
sprintf(shared_memory,"Трата Трата Та!");
shmdt(shared_memory);
shared_memory=(char*)shmat(segment_id,(void*)0x5000000,0);
printf("\n Общая память вернулась обратно по адресу:%p",shared_memory);
printf("\n%s\n",shared_memory);
shmdt(shared_memory);
shmctl(segment_id,IPC_RMID,0);
return 0;
}
Результат после компиляции
Общая память приводится в адрес:0x7f649b908000
Размер сегмента:25600
Общая память вернулась обратно по адресу:0x5000000
Трата Трата Та!
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
24.12.2011, 20:35
Ответы с готовыми решениями:

Неожиданное поведение программы: вместо вывода суммы чисел, на консоль всё время выводится ноль (цикл while)
Программа запрашивает ввод числа. После каждого введенного значения программа должна выдавать накопленную сумму введенных значений....

Табулирование функции трех переменных + запись в файл результатов. Файл не пишется
Помогите найти ошибку. Функция трех переменных f=f(x,y,z), x y - заданы начальные и конечные значения и шаг, z - массив, вводимый...

Запись результатов в файл
Здраствуйте дорогоие форумчане, я в дельфи новичек, еще всего не понимаю.. пот прошу у вас помощи Суть моей програмы. водит даные в форму...

4
Эксперт С++
 Аватар для niXman
3211 / 1459 / 74
Регистрация: 09.08.2009
Сообщений: 3,441
Записей в блоге: 2
24.12.2011, 23:00
этот вариант в файл не пишет. значит это рабочий вариант?
0
0 / 0 / 0
Регистрация: 08.09.2011
Сообщений: 22
24.12.2011, 23:11
Это рабочий. Но выводит содержимое на экран. нужно в файл.
0
Эксперт С++
 Аватар для niXman
3211 / 1459 / 74
Регистрация: 09.08.2009
Сообщений: 3,441
Записей в блоге: 2
24.12.2011, 23:27
так тебе нужно чтоб в файл выводилось только то, что выводится при помощи printf() на экран? если да - тогда не ясна проблема.. printf() замени на fprintf(). делов-то..
0
0 / 0 / 0
Регистрация: 08.09.2011
Сообщений: 22
25.12.2011, 14:41
Если сделаю так то выйдет в файле такое, без последней строчки

Code
1
2
3
Общая память приводится в адрес:0x7f649b908000
Размер сегмента:25600
Общая память вернулась обратно по адресу:0x5000000
А строка которая должна передаться с
sprintf(shared_memory,"Трата Трата Та!");
Не запишется в файл если сменю на fprintf. Тут как я понимаю с буффером нужно работать. С чем у меня к сожалению и проблемы
А конкретно в файл я должен вывести:
C
1
2
3
4
printf("\n Общая память приводится в адрес:%p",shared_memory);
printf("\n Размер сегмента:%d",segment_size);
sprintf(shared_memory,"Трата Трата Та!");
printf("\n Общая память вернулась обратно по адресу:%p",shared_memory);
Добавлено через 15 часов 3 минуты
Есть у кого какие идеи?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
25.12.2011, 14:41
Помогаю со студенческими работами здесь

Запись результатов в файл
(Перемещено из Turbo Pascal) Необходимо записать в файл исходную матрицу А и полученный массив В. при выполнении кода пишет...

Запись результатов в файл
Задание вроде бы не сложное -Дана последовательность A1,...An. Исключить из нее отрицательные элементы. Размерность массива n вводится с...

Запись данных в поток вывода на консоль, или могут ли быть объекты у абстрактных классов
Ребята, помогите разобраться. Читаю Шилдта С#. Фраза из книги: &quot;Потоки Console.Out и Console.Error являются объектами типа...

Запись в файл результатов запроса
Как записать select запрос в текстовый(или какой-нибудь) файл на форме? Помогите пожалуйста

Запись в файл результатов рассчета
нужно рассчитать расстояние до объекта в небе в любой момент времени, принять шаг дискретизации примерно по 30 секунд, вывести в файл в...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
Программный контроль заполнения реквизита табличной части документа
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: реализовать контроль заполнения реквизита "ПричинаСписания". . .
wmic не является внутренней или внешней командой
Maks 02.04.2026
Решение: DISM / Online / Add-Capability / CapabilityName:WMIC~~~~ Отсюда: https:/ / winitpro. ru/ index. php/ 2025/ 02/ 14/ komanda-wmic-ne-naydena/
Программная установка даты и запрет ее изменения
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: при создании документов установить период списания автоматически. . .
Вывод данных в справочнике через динамический список
Maks 01.04.2026
Реализация из решения ниже выполнена на примере нетипового справочника "Спецтехника" разработанного в конфигурации КА2. Задача: вывести данные из ТЧ нетипового документа. . .
Программное заполнения текстового поля в реквизите формы документа
Maks 01.04.2026
Алгоритм из решения ниже реализован на нетиповом документе "ВыдачаОборудованияНаСпецтехнику" разработанного в конфигурации КА2, в дополнении к предыдущему решению. На форме документа создается. . .
К слову об оптимизации
kumehtar 01.04.2026
Вспоминаю начало 2000-х, университет, когда я писал на Delphi. Тогда среди программистов на форумах активно обсуждали аккуратную работу с памятью: нужно было следить за переменными, вовремя. . .
Идея фильтра интернета (сервер = слой+фильтр).
Hrethgir 31.03.2026
Суть идеи заключается в том, чтобы запустить свой сервер, о чём я если честно мечтал давно и давно приобрёл книгу как это сделать. Но не было причин его запускать. Очумелые учёные напечатали на. . .
Модель здравосоХранения 6. ESG-повестка и устойчивое развитие; углублённый анализ кадрового бренда
anaschu 31.03.2026
В прикрепленном документе раздумья о том, как можно поменять модель в будущем
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru