fstream в vc++ 6
От: CraZzZy_LaMa  
Дата: 14.08.05 05:39
Оценка:
есть 2 идентичных кода:
#include <stdio.h>
int main() {
    char buf[10000];
    FILE * a = fopen("test.txt", "w");
    for (int i = 0; i < 10000; i++)
    {
        fwrite(buf, 1, 10000, a);
    }
    fclose(a);
    return 0;
}


и

#include <iostream>
#include <fstream>
using namespace std;
int main()
{
    char buf[10000];
    fstream a;
    a.open("test.txt", fstream::out);
    for (int i = 0; i < 10000; i++)
    {
        a.write(buf, 10000);
    }
    a.close();
    return 0;
}

оба кода создают файлик н 100 000 000 байт.

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

на gcc и на 7 студии оба кода работают с одинаковой нормальной скоростью(секунд 5-6 максимум)
что это такое?
можт там в студии галку какую поставить надо или компилять как-то по-умному?
Re: fstream в vc++ 6
От: ЯпонИц Россия www.yaponiz.com
Дата: 14.08.05 11:52
Оценка:
Здравствуйте, CraZzZy_LaMa, Вы писали:

[skiped]

CZZ>на 6 студии ентерпрайз первый код работает несколько секунд, второй — минуты полторы.

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

CZZ>на gcc и на 7 студии оба кода работают с одинаковой нормальной скоростью(секунд 5-6 максимум)

CZZ>что это такое?
CZZ>можт там в студии галку какую поставить надо или компилять как-то по-умному?

А Вы попробуйте STL в 6й студии поменять, имхо, весьма плохая реализация там.
Я не волшебник, я только учусь.
Posted by RSDN@HOME.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.