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

что в коде не так?

23.11.2012, 22:13. Просмотров 486. Ответов 11
Метки нет (Все метки)

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
#include<iostream> 
#include<cstdio> 
#include<cstdlib> 
#include<string> 
#include<algorithm> 
#include<vector> 
using namespace std; 
 
int main() { 
freopen("f", "r", stdin); 
 
string str; 
vector<string> v; 
 
while (cin >> str) { 
v.push_back(str); 
} 
 
sort(v.begin(), v.end()); 
for (int i = 0; i < v.size(); i++) {
cout<<v<<endl; //ошибка тут
} 
 
return 0; 
}
пишет :отсутствует оператор "<<" соответствующий этим операндам .
в подчеркнутой строчке выдает ошибку.
что не так?
библиотека string ,как видите,подключена!
не могу понять..
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
23.11.2012, 22:13
Ответы с готовыми решениями:

Что в коде ни так? while не работает так, как ожидаю
Написанный код, как я думаю, должен выдавать цифры от 0 до 1000, столбиком. Но...

Что не так в коде?
Дано натуральное число N. Если число содержит 5 цифр, то получить новое число...

что в коде не так?
#include &lt;string.h&gt; #include &lt;iomanip&gt; #include &lt;conio.h&gt; #include &lt;fstream&gt;...

Что не так в коде
#include &lt;iostream&gt; #include &lt;windows.h&gt; #include &lt;fstream&gt; #include...

Что не так в коде?
Вообщем, вся суть в том, чтобы пользователь задавал элементы массива, а...

11
I.M.
567 / 550 / 47
Регистрация: 16.12.2011
Сообщений: 1,389
23.11.2012, 22:15 #2
C++
1
cout << v[i] << endl;
0
Croessmah
++Ͻ
14487 / 8268 / 1553
Регистрация: 27.09.2012
Сообщений: 20,312
Записей в блоге: 3
Завершенные тесты: 1
23.11.2012, 22:15 #3
Цитата Сообщение от mario69 Посмотреть сообщение
библиотека string ,как видите,подключена!
А причем тут string, если Вы пытаетесь вывести vector?
0
zvoronz
272 / 240 / 56
Регистрация: 29.05.2012
Сообщений: 889
23.11.2012, 22:16 #4
Обращаешься же ты не к строке на прямую а к эл-ту вектора. Нужно там писать вот так
C++
1
cout<<v[i]<<endl;
0
MrGluck
Модератор
Эксперт CЭксперт С++
8070 / 4923 / 1430
Регистрация: 29.11.2010
Сообщений: 13,339
23.11.2012, 22:20 #5
Оно не знает, как вывести весь вектор. Оно лишь может выводить его элементы, то бишь int.
Можно либо делать так:
C++
1
2
for (int i = 0; i < v.size(); i++) 
cout<<v[i]<<endl;
Что было б не совсем грамотно, либо так:
C++
1
2
for (vector<int>::iterator it = v.begin(); it != v.end(); ++it) 
cout<< *it<< endl;
Либо так (версия с auto для кратности):
C++
1
2
for (auto it = v.begin(); it != v.end(); ++it) 
cout<< *it<< endl;
Либо так (смысл как у foreach конструкции):
C++
1
2
for (auto &it: v)
std::cout<< it<< " ";
Либо так (копирует в потом ostream):
C++
1
std::copy(v.begin(), v.end(), std::ostream_iterator<int> (std::cout, " ") );
0
mario69
0 / 0 / 0
Регистрация: 22.11.2012
Сообщений: 26
23.11.2012, 22:32  [ТС] #6
теперь вообще не работает..нажимаю F5 ,открывается черное окошко и сразу исчезает..эх..
0
Croessmah
++Ͻ
14487 / 8268 / 1553
Регистрация: 27.09.2012
Сообщений: 20,312
Записей в блоге: 3
Завершенные тесты: 1
23.11.2012, 22:34 #7
Цитата Сообщение от mario69 Посмотреть сообщение
теперь вообще не работает..нажимаю F5 ,открывается черное окошко и сразу исчезает..эх..
ctrl+F5
0
ValeryS
Модератор
7210 / 5473 / 681
Регистрация: 14.02.2011
Сообщений: 18,513
23.11.2012, 22:35 #8
Цитата Сообщение от mario69 Посмотреть сообщение
нажимаю F5 ,открывается черное окошео и сразу исчезает..эх..
нажми ctrl+F5
а вообще тема не раз обсуждалась

поставь в конце хотя бы
system("pause")
0
BumerangSP
4287 / 1409 / 463
Регистрация: 16.12.2010
Сообщений: 2,941
Записей в блоге: 3
23.11.2012, 22:36 #9
Цитата Сообщение от ValeryS Посмотреть сообщение
поставь в конце хотя бы
system("pause")

Не по теме:

Это желательно пояснять, что перед return 0 :)

0
mario69
0 / 0 / 0
Регистрация: 22.11.2012
Сообщений: 26
23.11.2012, 22:42  [ТС] #10
+пишет
"файл.exe": Загружено: "C:\Windows\SysWOW64\ntdll.dll", Невозможно найти или открыть файл PDB
"файл.exe": Загружено: "C:\Windows\SysWOW64\kernel32.dll", Невозможно найти или открыть файл PDB
"файл.exe": Загружено: "C:\Windows\SysWOW64\KernelBase.dll", Невозможно найти или открыть файл PDB
"файл.exe": Загружено: "C:\Windows\SysWOW64\msvcp100d.dll", Символы загружены.
"файл.exe": Загружено: "C:\Windows\SysWOW64\msvcr100d.dll", Символы загружены.

Добавлено через 3 минуты
system("pause");
написала.
теперь окошко появляется с надписью "для продолжения введите любую клавишу" и мгновенно исчезает.
0
ValeryS
Модератор
7210 / 5473 / 681
Регистрация: 14.02.2011
Сообщений: 18,513
23.11.2012, 22:46 #11
Цитата Сообщение от mario69 Посмотреть сообщение
+пишет
"файл.exe": Загружено: "C:\Windows\SysWOW64\ntdll.dll", Невозможно найти или открыть файл PDB
"файл.exe": Загружено: "C:\Windows\SysWOW64\kernel32.dll", Невозможно найти или открыть файл PDB
"файл.exe": Загружено: "C:\Windows\SysWOW64\KernelBase.dll", Невозможно найти или открыть файл PDB
"файл.exe": Загружено: "C:\Windows\SysWOW64\msvcp100d.dll", Символы загружены.
"файл.exe": Загружено: "C:\Windows\SysWOW64\msvcr100d.dll", Символы загружены.
нехай себе пишет
это он сообщает что не может найти отладочную информацию для системных библиотек
так её и нет если ты конечно не являешься пользователем отладочной версии виндос

Добавлено через 1 минуту
Цитата Сообщение от mario69 Посмотреть сообщение
system("pause");
написала.
а ты куды её написала?
если в конец (перед ретурном)то так и должно быть программа свое отработала и закрылась
0
zvoronz
272 / 240 / 56
Регистрация: 29.05.2012
Сообщений: 889
23.11.2012, 22:56 #12
А файл "f" у тебя в каталоге с программой присутствует?
Ты же строки из файла по видимому хочешь читать.
0
23.11.2012, 22:56
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
23.11.2012, 22:56

ЧТо не так в коде?
#include &lt;iostream&gt; #include &lt;stdio.h&gt; #include &lt;conio.h&gt; #include...

что не так в коде?
Не обходимо составить массив и заполнить его по правилу: {x}_{1} = 1; {x}_{i}...

Что не так в коде?
#include &lt;stdio.h&gt; int main(void) { int x; double sq = 1.428e2; int...


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

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

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