Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Dima_c8
4 / 4 / 2
Регистрация: 17.12.2011
Сообщений: 148
#1

Исправить ошибки в программе - C++

02.03.2012, 15:38. Просмотров 399. Ответов 2
Метки нет (Все метки)

Вот задача такая нужно прочитать из файла число прибавить к нему один и записать полученную суму обратно в этот же файл.Вот как я это пытался зделать:
http://www.cyberforum.ru/cpp-beginners/thread528935.html
1 - ый вариант:
C++
1
2
3
4
5
6
7
8
9
10
11
#include <fstream>
int main()
{
      fstream file;
      file.open( "File.txt" , ios::in|ios::out );
      long num;
      file >> num;
      file << ++num;
      file.close();
      return 0;
}
и второй вариант:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
#include <fstream>
int main()
{
      fstream file;
      file.open( "File.txt" , ios::in|ios::out );
      long num;
      file >> num;
      file.close();
      file.open( "File.txt" , ios::in|ios::out );
      file << ++num;
      file.close();
      return 0;
}
Я проверял проблемы начинаются: в варианте 1 строка 8 а в варианте 2 строка 10.Что то мне кажется вариант 2 поадыкватней .Оба варианта компилируются нормально но оба варианта стирают все содержимое файла.А не вписывают нужную цифру.Подскажите что не так в кодах.Заранее всем спасибо!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
02.03.2012, 15:38
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Исправить ошибки в программе (C++):

Исправить ошибки в программе
3. Даны действительные числа a, b, c, d, s, t, u (s и t одновременно не равны...

Исправить ошибки в программе
Задание: Создать абстрактный класс с виртуальной функцией – норма. Создать...

Исправить ошибки в программе
#include &lt;iostream&gt; using namespace std; char a; int k, i; int main() {...

Исправить ошибки в программе
Написать программу которая выводит ваше имя на экран в основном модуле и в...

Исправить ошибки в программе
#include&lt;stdio.h&gt; void NewMatr(int **matr, int size) { for(int...

2
sandye51
программист С++
833 / 592 / 147
Регистрация: 19.12.2010
Сообщений: 2,016
02.03.2012, 18:39 #2
Dima_c8, правильный вариант
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
28
29
30
31
32
//
//  main.cpp
//  test
//
//  Created by Ilya Lavrenov on 3/2/12.
//  Copyright (c) 2012 [email]sandye64@gmail.com[/email]. All rights reserved.
//
 
#include <iostream>
#include <fstream>
#include <string>
 
int main(int argc, const char * argv[])
{
    std::string fileName;
    std::cout << "Enter the file name" << std::endl;
    std::cin >> fileName;
    std::fstream file(fileName.c_str(), std::ios::in);
    if (file.fail())
    {
        std::cerr << "Bad file name" << std::endl;
        return EXIT_FAILURE;
    }
    unsigned long int value;
    file >> value;
    value++;
    file.close();
    file.open(fileName.c_str(), std::ios::out);
    file << value;
    file.close();
    return 0;
}
0
Dima_c8
4 / 4 / 2
Регистрация: 17.12.2011
Сообщений: 148
04.03.2012, 08:03  [ТС] #3
А что делает функцыя fail и c_str ?
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
04.03.2012, 08:03
Привет! Вот еще темы с решениями:

Исправить ошибки в программе
Здравствуйте,знаю что намудрил,буду очень благодарен, удалось убрать...

Исправить ошибки в программе
#include &lt;vector&gt; #include &lt;limits&gt; using namespace std; int n, minrow,...

Исправить ошибки в программе C++
База данных есть некоторые ошибки не могу исправить... #include...

Доделать и исправить ошибки в программе!
Кодирование Хаффмана Нужно доделать и исправить ошибки в программе! По 11...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru