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

Метод STL size и инициализация списка - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Как сделать так, чтобы элемент массива считывался и умножался. http://www.cyberforum.ru/cpp-beginners/thread937623.html
Вновь добрый вечер! Есть массив... пкод Я ввёл значение "1" в массив. Теперь пкод = 1 Но... Мне теперь нужно например это число в пкод умножить на число 1. Т.е. как я писал res = пкод * 1 - не прокатило. Он считает Асци код (49 код это единица) и умножает это число на это... в общем, как быть? Как сделать так, чтобы элемент массива считывался и умножался. (Извиняюсь за такую тему, не...
C++ Сортировка массива Добрый вечер! Мне нужно отсортировать элементы массива по возрастанию. Проблема в том, что элементы состоят как из цифр, так и из символов. Вводим допустим "ff03" и должно получиться согласно возрастанию шестнадцатеричной системе счисления, т.е. "03ff". Есть идеи у кого, как это сделать? Буду благодарен. Заранее спасибо! http://www.cyberforum.ru/cpp-beginners/thread937581.html
Не пойму чего хочет компилятор C++
Вот значит перепечатал буква в букву с книги Страуструпа такой код в main() . Этот кусок должен извлекать числа со строк, если это возможно. Но в одном месте пишет требуется точка с запятой и при компиляции куча ошибок. В чем дело здесь? П.С. VS2012 double str_to_double(string s)/*Вот тут красной волной выделяет и говорит о точке с запятой */ { istringstream is(s); double d; is>>d;...
.h Невозможно открыть C++
Помогите плз. Visual Studio стал выводить что невозможно открыть .h файл. Там у меня пол программы было. Кажется файл повреждён. Возможно ли как то его восстановить?
C++ Virtual Protect http://www.cyberforum.ru/cpp-beginners/thread937568.html
Хочу установить защиту на весь регион памяти dll , но нечего не выходит , при просмотре через редактор памяти , атрибуты те же остаются , вот код: DWORD Guard = 0x0; void shield() { if(show==1) { MODULEINFO moduleInf = {0}; moduleInf = GetModuleData ("имя.dll");
C++ понять ошибку Доброго вечера! Помогите понять что не так. Куда жать, как смотреть ошибку, не пнял. Правой мыщйу на vivodi.cpp , компилировать в выпадающем списке-и вот... Скрин. Код #include <iostream> using namespace std; #include <stdlib.h> int main() { cout << "Hello.\n"; подробнее

Показать сообщение отдельно
ArkTaS
1 / 1 / 0
Регистрация: 01.07.2013
Сообщений: 127

Метод STL size и инициализация списка - C++

13.08.2013, 22:56. Просмотров 660. Ответов 13
Метки (Все метки)

Всем доброго вечера! Вот код
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
34
35
#include <fstream> // для потоковых файловых функций
#include <typeinfo> // для typeid()
using namespace std;
#include <process.h> // для exit()
#include <iostream>
#include <string>
#include <algorithm>
#include <list>
 
 
void main()
{
   setlocale( LC_ALL,"Russian" );
 
 
 
   float  arr[] = { 35, 76, 8, 145, 6, 9, 79, 34 };
   list<int> ilist(arr,arr+8);
   list<int>::iterator iter1;
   list<int>::iterator iter2;
   iter1=ilist.begin();
   iter2=ilist.end();
 
   int size=ilist.size();
   cout<<" ilist.size() - "<<ilist.size()<<" size - "<<size<<' '<<endl; 
 
   for(int i=0; i < ilist.size(); i++)
   {
       cout<<ilist.front()<<' ';
       ilist.pop_front();
   }
 
   cout<<endl;
   system("pause");
}
А вот результатМетод STL size и инициализация списка проблема в том что выводится половина списка
Проблема решается двумя путями инициализацию списка можно провести вместо list<int> ilist(arr,arr+8) написать list<int> ilist(arr,arr+16) или же в цикле for условие i < ilist.size() изменить на i < size или i < 8 хотя метод ilist.size() и так возвращает 8. Что за колдовство подскажите ?!
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 15:53. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru