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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Nullik
43 / 12 / 1
Регистрация: 13.03.2013
Сообщений: 300
Завершенные тесты: 1
#1

Не компилирует max в cin.ignore(numeric_limits<streamsize>::max(),'\n') - C++

04.10.2013, 12:54. Просмотров 1142. Ответов 3
Метки нет (Все метки)

Компилятор MSVS 2010, проблема с max, как мне это устранить?

использовала define, но либо я не там ставила (и библиотеки тоже), либо что-то всё очень плохо.

Пример моего кода:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include "stdafx.h"
#include <limits> // для использования numeric_limits - числовых пределов
#include <Windows.h>
#include <iostream>
#include <string>
#include <iomanip>
 
using namespace std;
 
int main()
{
    setlocale(0,"");
    string strr; 
    (cin >> strr).get();
    //cin.clear();
    cin.ignore(numeric_limits<streamsize>max(),'\n');
    cin.get();
    return 0;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
04.10.2013, 12:54     Не компилирует max в cin.ignore(numeric_limits<streamsize>::max(),'\n')
Посмотрите здесь:
C++ Исправить код, вызывающий cin.ignore(numeric_limits<streamsize>::max())
C++ Даны действительные числа A, B, C. Получить max(a,a+b)+max(a,b+c,a+b) \ 1+max(ab,bc)+max(a+bc,15,ac)
C++ Задача для курсовой: определить значение z=max(a, 2b)*max(2a-b,b), где max(x, y)-максимальные из чисел х и у
Определить значение Z=max(a,2b)*max(2a-b,b), где max(x,y)-максимальное из чисел x,y C++
Определить значение функции max(a, max(a/2, cos b))*max(2a-b,b) C++
Найти min(max(x, y), max(x, z), max(z, d) C++
Найти в матрице А max элемент, все элементы в столбце до max умножить на 2 C++
Cin.clear cin.ignore C++
C++ Даны действительные числа a,b,c. Получить: max(a,a+b) + max (a,b+c) ...
Определите значение õ=max(a,a+b,a- b)+max(b, 2b-a,b+2a) C++
cin.ignore C++
C++ Избавиться от cin.ignore()

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Croessmah
Модератор
Эксперт CЭксперт С++
12980 / 7292 / 812
Регистрация: 27.09.2012
Сообщений: 18,007
Записей в блоге: 3
Завершенные тесты: 1
04.10.2013, 12:58     Не компилирует max в cin.ignore(numeric_limits<streamsize>::max(),'\n') #2
C++
1
numeric_limits<streamsize>::max()
Nullik
43 / 12 / 1
Регистрация: 13.03.2013
Сообщений: 300
Завершенные тесты: 1
04.10.2013, 13:12  [ТС]     Не компилирует max в cin.ignore(numeric_limits<streamsize>::max(),'\n') #3
Croessmah, а куда мне это нужно писать?

ааа, пробовала так - так тоже не прокатило.

Добавлено через 10 минут
всё, нашла решение проблемы! Спасибо Croessmah!


корректный код:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include "stdafx.h"
#include <limits> // для использования numeric_limits - числовых пределов
#include <Windows.h>
#include <iostream>
#include <string>
#include <iomanip>
 
using namespace std;
 
#if defined(max)
#undef max
#endif
 
int main()
{
    setlocale(0,"");
    string strr; 
    (cin >> strr).get();
    cin.clear();
    cin.ignore(numeric_limits<streamsize>::max(),'\n');
    cin.get();
    return 0;
}
Добавлено через 31 секунду
проблема была из-за max, который есть и в #include <Windows.h>
Tulosba
:)
Эксперт С++
4392 / 3235 / 297
Регистрация: 19.02.2013
Сообщений: 9,045
04.10.2013, 13:53     Не компилирует max в cin.ignore(numeric_limits<streamsize>::max(),'\n') #4
del
Yandex
Объявления
04.10.2013, 13:53     Не компилирует max в cin.ignore(numeric_limits<streamsize>::max(),'\n')
Ответ Создать тему
Опции темы

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