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

Чтение из файла - C++

Восстановить пароль Регистрация
 
lp_4eva
Учусь...
 Аватар для lp_4eva
59 / 2 / 1
Регистрация: 20.03.2010
Сообщений: 167
21.11.2011, 22:45     Чтение из файла #1
Добрый вечер!
Помогите пожалуйста с одной проблемкой!
Я Создала структуру node
Вот он:
C++
1
2
3
4
5
6
7
struct node
{
 char sym[10];
 float pro;
 int arr[20];
 int top;
}s[20];
Еще у меня есть txt файл с которого и должен прога считывать текст и находить вероятность каждых букв в тексте. Отбрасывая одинаковые буквы.
Вот я сделала ее таким образом:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
ifstream in;
ofstream out;
  in.open("1.txt");
 
 int str[1000];
 
  if(!in)cout<<"\n File not found ";
 
while(!in.eof()){
     in>>s;
for(int i=0; str[i]; i++)  
    ch[str[i]]++;
  
}
cout<<"\n Symbol vstre4aetsya:   ";
for(int i=0;i<256;i++){
     total++;
if(ch[i]){
           cout<<"\n    "<<char(i)<<"           "<<ch[i]<<" raz \n ";
           cout<<"\n Veroyatnost'=>    "<<"           "<<ch[i]/total<<" ";
 strcpy(s[i].sym,ch);
}
А теперь у меня выдает одну ошибку:
Вот такого содержания:
1>c:\users\user\documents\visual studio 2008\projects\fnal_tiiiiiiiii\fnal_tiiiiiiiii\shannonfano.cpp(91) : error C2679: binary '>>' : no operator found which takes a right-hand operand of type 'node [20]' (or there is no acceptable conversion)
Что из этого я поняла так это что моя структура не совместима с этим >>
Как исправить ошибку?!
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.11.2011, 22:45     Чтение из файла
Посмотрите здесь:

Чтение из файла C++
Чтение из файла C++
C++ Чтение из файла
C++ Чтение из файла
Чтение с файла C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Dani
1263 / 621 / 50
Регистрация: 11.08.2011
Сообщений: 2,236
Записей в блоге: 2
Завершенные тесты: 1
21.11.2011, 22:55     Чтение из файла #2
перегрузить >> (если я Вас понял)
lp_4eva
Учусь...
 Аватар для lp_4eva
59 / 2 / 1
Регистрация: 20.03.2010
Сообщений: 167
21.11.2011, 22:59  [ТС]     Чтение из файла #3
Цитата Сообщение от Dani Посмотреть сообщение
перегрузить >>
Это как? Я вас не поняла?!
Dani
1263 / 621 / 50
Регистрация: 11.08.2011
Сообщений: 2,236
Записей в блоге: 2
Завершенные тесты: 1
21.11.2011, 23:09     Чтение из файла #4
Перегрузка
mr.n-drey
40 / 40 / 1
Регистрация: 16.11.2010
Сообщений: 110
21.11.2011, 23:15     Чтение из файла #5
так понимаю проблема в этой строчке:
Цитата Сообщение от lp_4eva Посмотреть сообщение
in>>s;
Возможно я неправ, но может быть Вам подойдет вариант типа:
C++
1
2
3
4
5
k = 0;
while(!in.eof()){
     in>>s[k].sym>>s[k].pro>>s[k].arr>>s[k].top;
     k++;
     }
правда неуверен что
C++
1
>>s[k].arr
сработает, скорее всего прийдется так же проходить поэлементам...
lp_4eva
Учусь...
 Аватар для lp_4eva
59 / 2 / 1
Регистрация: 20.03.2010
Сообщений: 167
21.11.2011, 23:21  [ТС]     Чтение из файла #6
Цитата Сообщение от mr.n-drey Посмотреть сообщение
правда неуверен что
Код C++1 >>s[k].arr
сработает, скорее всего прийдется так же проходить поэлементам...
Да та же ошибка только вот с s[k].arr
А как это проходить по элементам?
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
22.11.2011, 09:49     Чтение из файла
Еще ссылки по теме:

чтение из файла C++
C++ Чтение из файла
Чтение из файла C++

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

Или воспользуйтесь поиском по форуму:
mr.n-drey
40 / 40 / 1
Регистрация: 16.11.2010
Сообщений: 110
22.11.2011, 09:49     Чтение из файла #7
Вобщем, как то так:
C++
1
2
3
4
5
6
7
8
k = 0;
while(!in.eof()){
     in>>s[k].sym>>s[k].pro;
     for(int i=0;i<20;i++)
       in>>s[k].arr[i];
     in>>s[k].top;
         k++;
         }
Yandex
Объявления
22.11.2011, 09:49     Чтение из файла
Ответ Создать тему
Опции темы

Текущее время: 00:13. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru