Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.83/6: Рейтинг темы: голосов - 6, средняя оценка - 4.83
0 / 0 / 0
Регистрация: 24.09.2017
Сообщений: 28
1

Ошибка инициализации переменной при чтении структурированного файла

22.10.2017, 16:45. Показов 1109. Ответов 2

Author24 — интернет-сервис помощи студентам
Почему выдаёт ошибку: "Использована неинициализированная локальная переменная "rr"."
При таком же использовании такого же кода раньше такой ошибки не было.
Вот код

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
33
#include <c:\Users\bonda\Documents\Visual Studio 2017\Projects\std_lib_facilities.h>
#include <Windows.h>
class record {
public:
    int x;
};
int rtoint(record rr) {
    int r{ rr.x };
    return r;
}
istream&operator>>(istream&is, record rr) {
    char ch1;
    is >> rr.x >> ch1;
    if (!is) return is;
    return is;
}
int main() {
    ifstream ist{ "C:/Users/bonda/Documents/Visual Studio 2017/Projects/Упражнение/Files/mydata.txt" };
    if (!ist) error("File was not opened!");
    int sum=0;
    int val;
    record rr;
    vector<record> v;
    while (ist >> rr) {
        v.push_back(rr);
    }
    for (record x : v) {
        val = rtoint(x);
        sum = sum + val;
    }
    cout << "Summ= "<<sum<<endl;
    keep_window_open();
}
Вот Содержимое считываемого файла

C++
1
1 2 3 4 5 6 7 8 9 10
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
22.10.2017, 16:45
Ответы с готовыми решениями:

Ошибка нарушения прав доступа при чтении по адресу, возникающая при инициализации трехмерного массива
Очень нужна ваша помощь! Я уже не знаю что тут можно сделать. Код части программы, где вылазит...

Ошибка при инициализации статистической переменной.
Ребят есть задание: В класс строки (пользовательский класс ) добавить статическую защищенную...

Ошибка при инициализации переменной делегатного типа
Нет в контексе removeSpaces Собственно вот код: /* * Created by SharpDevelop. * User:...

В новом описанном классе при инициализации переменной вылетает ошибка.
type TForm1 = class(TForm) MainMenu1: TMainMenu; procedure FormCreate(Sender:...

2
Модератор
Эксперт С++
13704 / 10907 / 6473
Регистрация: 18.12.2011
Сообщений: 29,117
22.10.2017, 16:52 2
Цитата Сообщение от valeron181100 Посмотреть сообщение
istream&operator>>(istream&is, record rr) {
rr надо передавать по ссылке
C++
1
istream&operator>>(istream&is, record& rr) {
Добавлено через 1 минуту
В чем глубокий смысл двух return?
Цитата Сообщение от valeron181100 Посмотреть сообщение
if (!is) return is;
return is;
1
0 / 0 / 0
Регистрация: 24.09.2017
Сообщений: 28
22.10.2017, 17:10  [ТС] 3
Цитата Сообщение от zss Посмотреть сообщение
В чем глубокий смысл двух return?
Сам не понимаю, однако бес второго return программа выдаёт исключение.
Цитата Сообщение от zss Посмотреть сообщение
rr надо передавать по ссылке
Спасибо, выручили!
0
22.10.2017, 17:10
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
22.10.2017, 17:10
Помогаю со студенческими работами здесь

Как при чтении HTML файла отвязаться от картинок-файлов и все сохранять в одной переменной?
Здравствуйте. Как при чтении HTML файла отвязаться от картинок-файлов и все сохранять в одной...

Ошибка при чтении из файла
программа выполняется записывает и читает из файла но вылетает непонятная ошибка Вызвано...

Ошибка при чтении файла
SEGM segment assume CS:SEGM, DS:SEGM, ES:SEGM, SS:SEGM org 100h Begin: ;open file mov ah,3dh...

Ошибка при чтении из файла
Ошибка при чтении записей из файла. Кто знает почему?? Все перепробовал:wall:


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru