Форум программистов, компьютерный форум CyberForum.ru

Что быстрее - двоичный или текстовый файл? - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Как хранить координаты фигуры? http://www.cyberforum.ru/cpp-beginners/thread1103614.html
Что нужно сделать: при запуске программы в центре рисуется прямоугольник, в меню есть 4 кнопки: растянуть влево, вправо, вверх, вниз растягивается на 1/8 разрешения экрана по высоте или ширине, собственно вопрос как хранить координаты фигуры? Пробовал через глобальные переменные, пробовал сохранять в массив, но не выходит#include "stdafx.h" #include "Familia.h" /*#define W 200 //...
C++ Нахождение суммы n-го количества чисел Требуется написать программу, которая осуществляет подсчёт суммы, n-го количества слагаемых. S=0+1-2+3-4+...n Очень нужна ваша помощь! :help: Буду всем очень признателен, за содействие. :) http://www.cyberforum.ru/cpp-beginners/thread1103611.html
Разнести весь код из main по отдельным функциям C++
Нужно что-бы все вычисления проводились через функции. Как мне перенести вычисления, a1,a2,a3,b1... и так далее, из мэйна в отдельную функцию? Если код можно как-то упростить, тоже пишите! Буду очень признателен за помощь. #include "stdafx.h" #include <iostream> #include <iomanip> #include <math.h>
C++ OpenIM - не работает распараллеливание циклов
void Multiplication(int a, int b) { int c; int i; int j; int count(0); omp_set_num_threads(count); #pragma omp parallel #pragma omp for firstprivate(j) lastprivate(i) for(i = 0; i < 5; i+=1) // i = ряд матрицы a
C++ Переполнение include http://www.cyberforum.ru/cpp-beginners/thread1103600.html
Здравствуйте! Такой вопрос есть класс Program и класс Universe, в классе Program я подключаю(#include) Universe.cpp, а в классе Universe подключаю(#include) Program.cpp. Вылезает ошибка, поразмыслив я понял что это вполне логично происходит какой-то закольцованный #include как от этого избавиться? Пробовал #pragma once не помогло( С++ токо начал копать, так что извините если слишком банальный...
C++ Почему отказались от #ifndef? Всем привет, Лафоре пишет, что от использовании директивы #ifndef стали отказываться в пользу #if !defined(). Может кто-нибудь объяснить почему? подробнее

Показать сообщение отдельно
taras atavin
Ушёл с форума.
3569 / 1752 / 91
Регистрация: 24.11.2009
Сообщений: 27,619
24.02.2014, 08:00
Все эти замены \n на \n\r вообще не относятся к чтению файла, это преобразование чисто прикладного фактического формата, а не чтение. Текстовый файл медленнее по другой причине. Как задаётся место в текстовом файле при произвольном доступе? Номерами символа и строки. Но строки имеют разную длину и чтоб найти, где нужная строка находится, надо последовательно прочитать и проанализировать файл от начала. Положение в бинарнике задаётся номером байта, все байты одинаковы, это позволяет вычислить, где конкретно нужный байт находится и сразу перейти к этому месту. С другой стороны, текстовый файл - байтовый. А бинарный? Бинарный может состоять из чего угодно и иметь чёрт знает какое выравнивание, иметь какой угодно порядок байт в словах, двойных словах, четверных словах..., что придётся учитывать при последовательном чтении. Возможно, придётся менять порядок байтов, менять выравнивание, или читать каждое данное отдельно. Все эти дополнительные операции замедляют чтение, но нужны не всегда. При последовательном же чтении текстового файла можно читать блок, что даёт максимальную скорость доступа. Возможно бинарник получится читать также, а может и нет.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru