|
0 / 0 / 0
Регистрация: 25.11.2012
Сообщений: 54
|
||||||
Низкоуровневый ввод-вывод. Как с помощью функции write записать в файл тип int?07.05.2014, 04:09. Показов 10320. Ответов 6
Метки нет (Все метки)
Работаю в Ubuntu.По заданию требуется использовать функции низкоуровневого ввода-вывода.Как с помощью функции write(fd,buf,bufsize) записать в файл тип int?Кроме char ничего не удается туда впихнуть.Файл просто не открывается.Кусок кода:
Кликните здесь для просмотра всего текста
Единственный вариант,который сработал-это преобразовать Int в char и записать.Но преобразовывать туда-сюда не желательно,да и хотелось бы понять в чем проблема.
0
|
||||||
| 07.05.2014, 04:09 | |
|
Ответы с готовыми решениями:
6
Низкоуровневый ввод/вывод
|
|
209 / 183 / 114
Регистрация: 15.03.2014
Сообщений: 398
|
||||||||||||
| 07.05.2014, 05:14 | ||||||||||||
Сообщение было отмечено TiraniD как решение
Решение
Нэйл Мэтью, Ричард Стоунс. Основы программирования в Linux. 4-е издание 2009. Глава 3 - работа с файлами. В данной главе описан низкоуровневый доступ к файлам.
1
|
||||||||||||
|
0 / 0 / 0
Регистрация: 25.11.2012
Сообщений: 54
|
|
| 07.05.2014, 14:04 [ТС] | |
|
Спасибо.Работает.Но почему не могу открыть сам файл?Пишет "Неизвестный тип файла".Или в ubuntu нельзя открыть двоичный файл?
0
|
|
|
209 / 183 / 114
Регистрация: 15.03.2014
Сообщений: 398
|
|
| 07.05.2014, 14:28 | |
|
Файл - просто набор байтов.
Если программа открывает файл и знает каким образом интерпретировать его содержимое - она отобразит адекватно его данные. В Вашем случае Вы используете программу, которая не знает как работать с данным набором байтов. Вот и говорит Вам, что не в курсе что за файл. Запись одних и тех же чисел в текстовом файле и в бинарном очень отличаются. Посмотрите на мой код. Программа ведь открывает файл. И читает данные и записывает в массив типа int. То есть можно сказать, что моя программа понимает как интерпретировать эти данные. И выводит их адекватно на стандартный вывод. Есть различные программы, которые позволяют просмотреть содержимое двоичных файлов. Но для такого просмотра должна быть адекватная цель. Так как программа - просто будет интерпретировать набор данных в файле по-своему. На скриншоте я открыл данный файл с помощью программки Sublime Text 3. Можно увидеть как она интерпретировала содержимое файла. В данном случае хорошо видны числа с 1 до 10. Размер файла как и предполагалось равен 40 байт - это 10 значений типа int, по 4 байта каждое. Если Вы создали некий двоичный файл с помощью своей программы, то Вам и писать код, который будет знать как содержимое данного файла интерпретировать.
1
|
|
|
0 / 0 / 0
Регистрация: 25.11.2012
Сообщений: 54
|
|
| 07.05.2014, 15:24 [ТС] | |
|
Ясно.И тогда последний вопрос.Как считать из такого файла массив char?(Записываю в файл одновременно int и char).Получается считать только первый символ,и только в виде числа.
0
|
|
|
209 / 183 / 114
Регистрация: 15.03.2014
Сообщений: 398
|
|
| 07.05.2014, 15:43 | |
|
Если Вы записываете int и char, то можно также их и читать обратно как записали.
Вообще если у Вас есть несколько разных типов данных, которые необходимо сохранять в двоичный файл - создаете структуру данных и ее уже пишете.
1
|
|
|
0 / 0 / 0
Регистрация: 25.11.2012
Сообщений: 54
|
|
| 07.05.2014, 18:02 [ТС] | |
|
Разобрался.Большое спасибо.
0
|
|
| 07.05.2014, 18:02 | |
|
Помогаю со студенческими работами здесь
7
Как при помощи ф-ий read/write записать в файл, а потом считать с него Используя ввод-вывод в стиле С++ создать файл и записать в него структурированные данные Используя ввод-вывод в стиле С создать файл и записать в него структурированные данные Организовать ввод, округление числа с точностью до 2 знака с помощью своей функции (по закону: 6 - 9>0), и вывод обработанных чисел. как записать данные из Int файл Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога
Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
|
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование
. \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json>
Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом.
# Check if. . .
|
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так:
https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347
Основана на STM32F303RBT6.
На борту пять. . .
|
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
|
|
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу,
и светлой Луне.
В мире
покоя нет
и люди
не могут жить в тишине.
А жить им немного лет.
|
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила»
«Время-Деньги»
«Деньги -Пуля»
|
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога
Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
|
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога
Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
|