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

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

Войти
Регистрация
Восстановить пароль
 
taras atavin
Ушёл с форума.
3569 / 1752 / 91
Регистрация: 24.11.2009
Сообщений: 27,619
#1

Есть ли это на c++? - C++

19.05.2012, 09:22. Просмотров 1201. Ответов 7
Метки нет (Все метки)

В паскале вроде есть константа maxint. А на c++ есть какой нибудь синтаксис для максимально представимых и минимально представимых мемсайзов и целых в зависимости от типа? Чтоб не думать о размере типа и магических числах вида 0xFFFFFFFF.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
19.05.2012, 09:22     Есть ли это на c++?
Посмотрите здесь:

Дан текст. Выяснить или есть он индетификатором. Индетификатор - это последовательность букв и цифр, которые начинаются с буквы. C++
C++ Есть 2 кусочка прграммы... Как это собрать в одну, чтобы работало? )))
this это адресс объекта, а *this это сам объект. я всё правельно понял? C++
Есть производный класс и базовый; при чём производный использует только ЧАСТЬ ресурсов базового, правильно ли это? C++
C++ есть вложенный класс который является другом объемлюющего и всё это должно компилиться.
C++ Есть бесконечный цикл в программе и она поэтому занимает процессор, как это исправить?
С + + и Visual C + + и чем они отличаются? Есть ли их изучение взаимно дополняющее или это совсем разные языки? C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
diagon
Higher
1924 / 1190 / 49
Регистрация: 02.05.2010
Сообщений: 2,925
Записей в блоге: 2
19.05.2012, 09:24     Есть ли это на c++? #2
В С есть INT_MAX из limits.h
В с++ есть numeric_limits
taras atavin
Ушёл с форума.
3569 / 1752 / 91
Регистрация: 24.11.2009
Сообщений: 27,619
19.05.2012, 09:31  [ТС]     Есть ли это на c++? #3
То есть
C++
1
2
3
4
int a;
int b;
a=numeric_limits<int>min();
b=numeric_limits<int>max();
? Работает со всеми целыми и мемсайзными типами? Будут ли вызваны рантаймовые функции, или подставлены значения, полученные на этапе компиляции?
diagon
Higher
1924 / 1190 / 49
Регистрация: 02.05.2010
Сообщений: 2,925
Записей в блоге: 2
19.05.2012, 09:34     Есть ли это на c++? #4
Цитата Сообщение от taras atavin Посмотреть сообщение
numeric_limits<int>min();
C++
1
numeric_limits< int >::min();
Выполняется во время компиляции.
taras atavin
Ушёл с форума.
3569 / 1752 / 91
Регистрация: 24.11.2009
Сообщений: 27,619
19.05.2012, 09:38  [ТС]     Есть ли это на c++? #5
Для знакового инта будет получено отрицательное значение, а для беззнакового 0? А
C++
1
numeric_limits< signed int >::max();
и
C++
1
numeric_limits< unsigned int >::max();
дают разные значения? Есть специализации для мемсайза? Или как их сделать?
diagon
Higher
1924 / 1190 / 49
Регистрация: 02.05.2010
Сообщений: 2,925
Записей в блоге: 2
19.05.2012, 09:46     Есть ли это на c++? #6
Цитата Сообщение от taras atavin Посмотреть сообщение
Для знакового инта будет получено отрицательное значение, а для беззнакового 0?
В случае с min - да.

Цитата Сообщение от taras atavin Посмотреть сообщение
дают разные значения
Разные

Цитата Сообщение от taras atavin Посмотреть сообщение
Есть специализации для мемсайза?
Что есть мемсайз?


Цитата Сообщение от taras atavin Посмотреть сообщение
Или как их сделать?
Сделать просто
C++
1
2
3
4
5
6
7
8
namespace std
{
    template <>
    class numeric_limits< my_type >
    {
        static const int max = 100500;
    };
};
taras atavin
Ушёл с форума.
3569 / 1752 / 91
Регистрация: 24.11.2009
Сообщений: 27,619
19.05.2012, 09:57  [ТС]     Есть ли это на c++? #7
Цитата Сообщение от diagon Посмотреть сообщение
Что есть мемсайз?
Целый тип, размер которого гарантировано достаточен для помещения в него любого указателя, позволяет считать даже символы в
C++
1
char *s;
при любом их возможном количестве. На 64-битных платформах может не совпадать с int.
Цитата Сообщение от diagon Посмотреть сообщение
static const int max = 100500;
И менять в зависимости от разрядности адреса? А смысл тогда в такой специализации? Вписать готовое число и менять его вручную я могу и так.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
19.05.2012, 09:59     Есть ли это на c++?
Еще ссылки по теме:

C++ нужно создать таблицу из 3 строк и 4 столбцов и заполнить её (любой информацией,это неважно) . Как это можно сделать ?
C++ Назначение flag, то есть что это вообще такое
C++ std::map что такое и с чем это есть
Факториал! Для кого-то это легко, а кто-то вообще это не знает! C++
Связанный список. Как это делается и зачем это нужно? C++

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

Или воспользуйтесь поиском по форуму:
diagon
Higher
1924 / 1190 / 49
Регистрация: 02.05.2010
Сообщений: 2,925
Записей в блоге: 2
19.05.2012, 09:59     Есть ли это на c++? #8
Ну есть numeric_limits< size_t >
size_t на 32-битных осях занимает 32 бита(в gcc это тупо typedef на unsigned int), и 64 бита на 64-битных ос соответственно.
Yandex
Объявления
19.05.2012, 09:59     Есть ли это на c++?
Ответ Создать тему
Опции темы

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