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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 03.07.2014, 15:30   #1
Kitekat
 
Регистрация: 03.07.2014
Сообщений: 7
По умолчанию Ошибка <<

выдает ошибку error C2296: '>>' : illegal, left operand has type 'const char [44]' просмотрела кучу инфы, но так и не могу понять.
Вот фрагмент кода, работаю в вижул студио с++ :
Код:
int n, m;
int** matrix=new int*[m];
for(int i=0; i<m; i++)
{
for(int j=0; j<n; j++)
("txt files (*.txt)|*.txt|All files (*.*)|*.*") >> matrix[i][j];
}

Последний раз редактировалось Stilet; 03.07.2014 в 17:31.
Kitekat вне форума Ответить с цитированием
Старый 03.07.2014, 16:04   #2
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

вы где такой код то нашли?
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Старый 03.07.2014, 16:06   #3
Kitekat
 
Регистрация: 03.07.2014
Сообщений: 7
По умолчанию

там некоторых строк нет, так как открытие файла идет выше, я не стала скидывать

нет, по-другому вопрос задам. Надо из файла считать данные и вывести на экран при нажатии кнопки в вижуал студио с++, нашла вот только такой фрагмент, подскажите что надо дописать.
Код:
{
Stream^ myStream;
      OpenFileDialog^ openFileDialog1 = gcnew OpenFileDialog;

      openFileDialog1->InitialDirectory = "c:\\";
      openFileDialog1->Filter = "txt files (*.txt)|*.txt|All files (*.*)|*.*";
      openFileDialog1->FilterIndex = 2;
      openFileDialog1->RestoreDirectory = true;

      if ( openFileDialog1->ShowDialog() == System::Windows::Forms::DialogResult::OK )
      {
         if ( (myStream = openFileDialog1->OpenFile()) != nullptr )
         {
            // Insert code to read the stream here.
int n, m; //чтение и запись
int** matrix=new int*[m];
for(int i=0; i<m; i++)
{
for(int j=0; j<n; j++)
("txt files (*.txt)|*.txt|All files (*.*)|*.*") >> matrix[i][j];
}
            myStream->Close();
         }
      }
	  }

Последний раз редактировалось Stilet; 03.07.2014 в 17:34.
Kitekat вне форума Ответить с цитированием
Старый 03.07.2014, 18:22   #4
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

Код:
("txt files (*.txt)|*.txt|All files (*.*)|*.*") >> matrix[i][j];
что вы хотите чтоб программа сделала здесь?
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Старый 04.07.2014, 00:03   #5
Zenon
Пользователь
 
Регистрация: 03.07.2014
Сообщений: 32
По умолчанию

Цитата:
Сообщение от Kitekat Посмотреть сообщение
нет, по-другому вопрос задам. Надо из файла считать данные и вывести на экран при нажатии кнопки в вижуал студио
Проще говоря, надо лабораторку сдать, ага?

Смысл лабораторки в том, чтобы потренироваться, а если из гугля списывать, какая же это треня?

Подозреваю, что ваша лабораторка связана с потоками и STL, так что от вас ждут программу вроде такой:

Код:
#include <iostream>
#include <fstream>
#include <string>

using namespace std;

int main(int argc, char **argv)
{
	if (!argv[1])
		return -1;
	
	ifstream infile(argv[1]);
	if (!infile)
		return -1;

	string str;
	while(getline(infile, str))
		cout << str << '\n';

	return 0;
}
- это почти то, что вам нужно, не хватает только сделать ожидание "нажатия кнопки" перед всем этим.
Zenon вне форума Ответить с цитированием
Старый 04.07.2014, 07:05   #6
Kitekat
 
Регистрация: 03.07.2014
Сообщений: 7
По умолчанию

("txt files (*.txt)|*.txt|All files (*.*)|*.*") >> matrix[i][j];
из файла данные будут записываться в матрицу. или нет?

Последний раз редактировалось Kitekat; 04.07.2014 в 07:09.
Kitekat вне форума Ответить с цитированием
Старый 04.07.2014, 07:25   #7
Kitekat
 
Регистрация: 03.07.2014
Сообщений: 7
По умолчанию

немного не то, надо из файла считать данные и записать их в матрицу. Вот.
Но спасибо)
Kitekat вне форума Ответить с цитированием
Старый 04.07.2014, 07:59   #8
Kitekat
 
Регистрация: 03.07.2014
Сообщений: 7
По умолчанию

Перерыла всё, не могу понять я открываю файл, считываю из него данные и должна их записать в матрицу. Некоторые дают имя объекта файла например: ifstream f("file.txt"); а потом везде указывают f, а не весь файл. Я же так не делала так как открываю файл по-другому. Как быть, что делать. подскажите пожалуйста.
Kitekat вне форума Ответить с цитированием
Старый 04.07.2014, 10:58   #9
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

у вас тоже есть поток, читаете вы из потока.

а вы написали попытку чтения из строки(причем фильтра), файлом там и не пахло.

а f, в примере, это переменная потока, а поток связан с файлом.
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Старый 04.07.2014, 13:18   #10
Kitekat
 
Регистрация: 03.07.2014
Сообщений: 7
По умолчанию

Была бы безумно благодарна, если бы вы мне написали как надо, потому что уже испробовано всё и что-то новое не приходит в голову((
Пробовала так, но выдает ошибку: error C2296: '>>' : illegal, left operand has type 'FILE *' :
FILE*f;
f = fopen("rer.txt", "r");
if(f==NULL){
printf("Файл не найден... /n Для окончания работы на-жмите любую клавишу...");
system("pause");
exit(0);
}
int n, m; //чтение и запись
int** matrix=new int*[m];
for(int i=0; i<n; i++)
{
for(int j=0; j<m; j++)
f >> matrix[i][j]; //чтение из файла в матрицу
}
myStream->Close();
}
}

Последний раз редактировалось Kitekat; 04.07.2014 в 13:36.
Kitekat вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Nero - ошибка драйвера DMA. ошибка CRC NecRoMat Софт 5 09.05.2012 01:29
Где ошибка в этом исходном коде на языке Си? Или ошибка в Excel? ArchiCurtis Помощь студентам 2 07.04.2012 14:16
Ошибка run-time Error 1004 общая ошибка ODBC kaval88 Microsoft Office Excel 0 27.02.2011 20:20
Ошибка в коде, ошибка в css или это проблема с совместимостью с браузерами? ankris HTML и CSS 5 23.11.2010 16:58
Это ошибка Delphi или моя ошибка??? bloodeagle Общие вопросы Delphi 3 12.11.2009 15:26