Форум программистов, компьютерный форум, киберфорум
Наши страницы

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

Войти
Регистрация
Восстановить пароль
 
MAnton
23 / 23 / 1
Регистрация: 21.04.2011
Сообщений: 139
#1

Значение переменной типа int - C++

26.08.2013, 12:27. Просмотров 892. Ответов 3
Метки нет (Все метки)

Я хочу присвоить переменной типа int значение 2147483648, а в gdb я посмотрел значение переменной и оно оказалось равным -2147483648, в чем причина?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
26.08.2013, 12:27
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Значение переменной типа int (C++):

Максимальное значение переменной типа int - C++
Если тип long в 2 раза больше чем int. Сколько максимум в int? В чём они измеряются в памяти? в цифрах вывода?

Присвоить переменной Char значение третьего байта переменно типа Int - C++
всем привет, на одном собеседовании передо мной поставили следующую задачу, присвоить переменной char ch, значение третьего байта переменно...

Переменной типа int при первой итерации цикла приписывается значение меньше на 1 - C++
Доброго времени суток. Возникла проблема которую видно на скриншоте. Получаеться что если выводить значение переменной то получаем...

Напишите перегруженную функцию power (), которая принимает два целочисленных параметра типа int и возвращает целочисленное значение типа int - C++
Операции над целыми числами осуществляются быстрее, чем над числами с плавающей точкой. Напишите перегруженную функцию power (), ...

Записать адрес переменной произвольного типа в переменную типа int - C++
Здравствуйте, есть структура __packed struct myStruct{ uint32 HisCh; uint32 sNo; uint16 tNo; uint32 reserv; };

Значение типа "int*" нельзя присвоить сущности типа int - C++
#include <iostream> using namespace std; int sort(int k, int p, int b, int n) { int min = 0; // для вставки задач int sum;...

3
Croessmah
Ушел
Эксперт CЭксперт С++
13553 / 7704 / 872
Регистрация: 27.09.2012
Сообщений: 19,006
Записей в блоге: 3
Завершенные тесты: 1
26.08.2013, 12:29 #2
Значит int у Вас четырехбайтный. Происходит переполнение, поэтому, собственно так и получается.
1
Dani
1393 / 637 / 57
Регистрация: 11.08.2011
Сообщений: 2,290
Записей в блоге: 2
Завершенные тесты: 1
26.08.2013, 12:46 #3
Потому что максимальное значение для int размером 4 байта - это 2^31-1 (не 2^31, т.к. еще 0 нужно учесть).
1
Hugra
48 / 48 / 1
Регистрация: 18.07.2013
Сообщений: 138
Записей в блоге: 1
26.08.2013, 13:45 #4
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
// limits.cpp -- некоторые ограничения целых чисел
#include <iostream>
#include <climits> //использование заголовочного файла limits.h для старых систем
int main()
{
    using namespace std;
    int n_int = INT_MAX;// инициализация, или присваивание переменной n_int                             // максимального значения int
    short n_short = SHRT_MAX; // символы, определенные в файле limits.h
    long n_long = LONG_MAX;
    // операция sizeof выдает размер типа или переменной
    cout << "int is " << sizeof (int) << " bytes." << endl;
    cout << "short is " << sizeof n_short << " bytes." << endl;
    cout << "long is " << sizeof n_long << " bytes." << endl << endl;
    cout << "Maximum values:" << endl;
    cout << "int: " << n_int << endl;
    cout << "short: " << n_short << endl;
    cout << "long: " << n_long << endl << endl;
    cout << "Minimum int value = " << INT_MIN << endl;
    cout << "Bits per byte = " << CHAR_BIT << endl;
    system("PAUSE");
    return 0;
}
1
26.08.2013, 13:45
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
26.08.2013, 13:45
Привет! Вот еще темы с ответами:

МАССИВЫ: динамические мас.значение типа "int *" нельзя присвоить сущности типа "int" - C++
МАССИВЫ: динамические массива ОШИБКА:значение типа &quot;int *&quot; нельзя присвоить сущности типа &quot;int&quot; #include &lt;iostream&gt; using...

Есть переменная типа char содержащая цифру; как записать это значение в переменную типа int? - C++
Пожалуйста, напомните стандартную функцию

Обращение к переменной типа int в СУБД - C++
Как обращаться к переменной типа int в СУБД в условии? Допустим с типом char вот так: if(!strcmp (a.p,b)) Тут у меня был...

Конвертация переменной типа string в массив int - C++
Добрый день. Есть строка string выглядит следующим образом: string str = &quot;01 07 45 0F 12 00 02 09 10 BA 00 34 33 30 35 32 31 31 33&quot;; ...


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

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

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