Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 12.12.2012, 17:43   #11
Perchik71
С++, Delphi
Форумчанин
 
Аватар для Perchik71
 
Регистрация: 24.11.2012
Сообщений: 495
По умолчанию

закоментил всё оки.... проверил также твой любимый инкремент... и убедился что я ничего не путаю

инк ++i в цикле сначала инкриминирует а потом смотрит
инк i++ в цикле с начало смотрит потом инкриминирует.
Если помог, тут весы есть , Вам не сложно, а мне приятно.
Perchik71 вне форума Ответить с цитированием
Старый 12.12.2012, 17:46   #12
Perchik71
С++, Delphi
Форумчанин
 
Аватар для Perchik71
 
Регистрация: 24.11.2012
Сообщений: 495
Радость

вот мой кран.. чтоб поверил...
Изображения
Тип файла: jpg проп.jpg (33.9 Кб, 70 просмотров)
Если помог, тут весы есть , Вам не сложно, а мне приятно.
Perchik71 вне форума Ответить с цитированием
Старый 12.12.2012, 17:49   #13
rommster
Пользователь
 
Регистрация: 05.10.2010
Сообщений: 46
По умолчанию

Цитата:
Сообщение от Perchik71 Посмотреть сообщение
инк ++i в цикле сначала инкриминирует а потом смотрит
инк i++ в цикле с начало смотрит потом инкриминирует.
К сожалению, ты путаешь. Но не в этом суть. Для встроенных типов это на скорости не скажется.

Слушай, пришли если не сложно скриншот той проги, где комменты не стоят. Я уже не врубаюсь, то ли на компе глюки ((
rommster вне форума Ответить с цитированием
Старый 12.12.2012, 17:53   #14
Perchik71
С++, Delphi
Форумчанин
 
Аватар для Perchik71
 
Регистрация: 24.11.2012
Сообщений: 495
По умолчанию

ты не понял......

у тебя записываются 4 студента вместо 5.......
ибо старт начинается с 1 индекса.. а нужно с 0..
уж ты меня не учи с массивами у меня всё гладко.
чтоб понял изюм

0 30 60 90 120 150

размер файла будет 150

но что бы прочесть с конца предпоследнию

нужно уйти на 60 будет 90.. после чтения 120....
Если помог, тут весы есть , Вам не сложно, а мне приятно.
Perchik71 вне форума Ответить с цитированием
Старый 12.12.2012, 18:01   #15
rommster
Пользователь
 
Регистрация: 05.10.2010
Сообщений: 46
По умолчанию

С какого 1? И массивы тут не при чем.

Приращение ++i выполняется после тела цикла. Хот постинкремент хоть преинкремент напиши. Если у тебя этот цикл выполнился 4 раза, то я не знаю, что за компилятор творит такие чудеса.
rommster вне форума Ответить с цитированием
Старый 12.12.2012, 18:04   #16
Perchik71
С++, Delphi
Форумчанин
 
Аватар для Perchik71
 
Регистрация: 24.11.2012
Сообщений: 495
По умолчанию

парнишь ты заработался....

короче ++i

Код:
while(....)
{
i++;
.....
}
короче i++

Код:
while(....)
{
.....
i++;
}
ты записываешь в базу 4 значения..
и записываешь тоже 4.....

и никаких у меня чудес нет....
почитай асм..
Если помог, тут весы есть , Вам не сложно, а мне приятно.
Perchik71 вне форума Ответить с цитированием
Старый 12.12.2012, 18:06   #17
Perchik71
С++, Delphi
Форумчанин
 
Аватар для Perchik71
 
Регистрация: 24.11.2012
Сообщений: 495
Счастье

вобщем код я написал... полностью скопируешь и вставишь... и всё будет работать..... более мне нечего тебе сказать... если ты понимать не хочешь...
Если помог, тут весы есть , Вам не сложно, а мне приятно.
Perchik71 вне форума Ответить с цитированием
Старый 12.12.2012, 18:12   #18
rommster
Пользователь
 
Регистрация: 05.10.2010
Сообщений: 46
По умолчанию

Да копировал я код, спасибо. И в своем инкремент менял. Все абсолютно то же самое.

Не сердись, просто не получается нифига, а ты мне про инкременты) Ну вот смотри пример простой по инкрементам:

Код:
int main() 
{   
    const int size = 5;
    int arr[size] = {1,2,3,4,5};
    
    for(int i = 0; i < size; ++i)
        std::cout << arr[i] << " ";
    std::cout << "\n";
        
    for(int i = 0; i < size; i++)
        std::cout << arr[i] << " ";
    std::cout << "\n";
}
В первом случае 5 раз во втором 4? У меня - в обоих пять.
rommster вне форума Ответить с цитированием
Старый 12.12.2012, 18:21   #19
Perchik71
С++, Delphi
Форумчанин
 
Аватар для Perchik71
 
Регистрация: 24.11.2012
Сообщений: 495
По умолчанию

Лан.. бог с ним... в любом случаи должно быть что-то... или мусор....

Код:
int main(int argc, char* argv[])
{
        int i, j;

        STUDENT arr[5];
        STUDENT temp;

    for(i = 0; i < 5; i++)
    {
        cout << "Enter number: ";
        cin >> arr[i].nomer; 
        cout << "Enter name: ";
        cin >> arr[i].name;    
    }
 
    ofstream fout("text.dat", ios::binary);
    for(i = 0; i < 5; i++)
        fout.write((char*)&arr[i], sizeof(STUDENT));
    fout.close();

    ifstream fin("text.dat", ios::binary); 
    
 /*   
    fin.seekg(1 * sizeof(STUDENT), ios::beg);
    fin.read((char*)&temp, sizeof(STUDENT));
    cout << "Nomer: " << temp.nomer << " Name: " << temp.name << "\n";
  */      

    fin.seekg(-2 * sizeof(STUDENT), ios::end);
    fin.read((char*)&temp, sizeof(STUDENT));
    cout << "Nomer: " << temp.nomer << " Name: " << temp.name << "\n";

    system("pause");

    return 0;
}
вот код.... я останусь верен этой инкременации.. ибо всё ещё критично от компилятора.

а правила никто не менял....

дело в том... что у меня пашит..... ну ты хоть застрелись.. я не знаю чем помочь... твой код переделаный просто летает и в release и в debug.... может ты ещё чёто делаешь?
Если помог, тут весы есть , Вам не сложно, а мне приятно.
Perchik71 вне форума Ответить с цитированием
Старый 12.12.2012, 18:30   #20
rommster
Пользователь
 
Регистрация: 05.10.2010
Сообщений: 46
По умолчанию

Нет, в том то и дело, что полностью копирую. То чтение, которое от начала файла - работает на ура. А вот с ios::end проблемы, на самом деле хоть стреляйся.

Отзовитесь кто-нибудь еще... может это у меня одного такие проблемы(
rommster вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
чтение данных из файла и запись в в массив.как чтобы до конца читал? Fundorin Общие вопросы C/C++ 0 15.11.2011 18:10
Чтение и запись структуры в бинарный файл. jack291 Помощь студентам 2 20.08.2011 18:07
Получать записи с конца Query us4us БД в Delphi 2 26.05.2011 00:23
Чтение и запись структуры в бинарный файл Bed Alice Общие вопросы C/C++ 1 09.11.2010 21:17
Чтение содержимого страницы происходит не до конца SpaceIQ Общие вопросы .NET 0 26.04.2010 16:33