Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 5.00/5: Рейтинг темы: голосов - 5, средняя оценка - 5.00
BigLow
55 / 55 / 6
Регистрация: 07.07.2013
Сообщений: 345
1

Определение типов. Приведение int к unsigned int

02.08.2013, 15:02. Просмотров 1035. Ответов 5
Метки нет (Все метки)

При таком определении 5 рассматривается как int. Как при определении указать что 5 будет именно unsigned int?

C++
1
unsigned int    n=5;
Для вещественных типов добавляется буква F:
C++
1
float f=3.14F;
И тут число 3.14 будет иметь тип float
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
02.08.2013, 15:02
Ответы с готовыми решениями:

Приведение типов (int к char)
char x = 177; // warning C4309: инициализация: усечение константного значения ...

Некорректное преобразование double в int (приведение типов)
Не совсем очевидно. https://ideone.com/7P0EhY #include <iostream>...

Поместить двоичный код, в веденной строке, в переменную типа int и unsigned int.
Пользователь вводит двоичную строку (32 символа). Поместить двоичный код, в...

Как исправить ошибку невозможно преобразовать аргумент 1 из "unsigned int" в "unsigned int []"?
Ребят, срочно прошу вас помочь.. Есть ошибка (невозможно преобразовать...

Error LNK2019: unresolved external symbol "public: __thiscall Vector<int>::Vector<int>(int,int,int)" (?0?$Vec
Вот есть заголовочный файл // Заголовочный файл Vector.h #ifndef VECTOR_H...

5
Kuzia domovenok
2406 / 2124 / 512
Регистрация: 25.03.2012
Сообщений: 7,643
Записей в блоге: 1
02.08.2013, 15:07 2
а есть какие-то проблемы?

Но раз уж хочется, то пиши
C++
1
unsigned int    n=5u;
1
BigLow
55 / 55 / 6
Регистрация: 07.07.2013
Сообщений: 345
02.08.2013, 15:09  [ТС] 3
Цитата Сообщение от Kuzia domovenok Посмотреть сообщение
а есть какие-то проблемы?
лишние преобразования. Сначала 5 имеет тип int, после этого это число преобразуется в unsigned int.

Я имею ввиду что здесь лишняя и ненужная работа
0
Kuzia domovenok
2406 / 2124 / 512
Регистрация: 25.03.2012
Сообщений: 7,643
Записей в блоге: 1
02.08.2013, 15:11 4
Цитата Сообщение от BigLow Посмотреть сообщение
лишние преобразования. Сначала 5 имеет тип int, после этого это число преобразуется в unsigned int.
Разве это влияет на скорость? Эти преобразования происходят на этапе компиляции!
0
BigLow
55 / 55 / 6
Регистрация: 07.07.2013
Сообщений: 345
02.08.2013, 15:14  [ТС] 5
Цитата Сообщение от Kuzia domovenok Посмотреть сообщение
Эти преобразования происходят на этапе компиляции!
я не знал об этом
0
zer0mail
2452 / 2089 / 216
Регистрация: 03.07.2012
Сообщений: 7,576
Записей в блоге: 1
02.08.2013, 16:04 6
Тип определяется переменной, а не константой. Значения в i и j (до бита) будут одинаковы:
C++
1
2
3
4
5
6
int i=5;
или
int i=5u; 
unsigned int j=5;
или
unsigned int j=5u;
Различия появятся когда i и j начнут участвовать в операциях (компилятор сгенерирует разный код).

Более, того все переменные (до бита) будет одинаковы, если присвоить -5. Так что компилятору ничего преобразовывать не надо - он тупо запишет в ячейку набор битов.

И при сложении/умножении двух целых:
C
1
i+=j; i*=j;
биты результата не зависят от того, unsigned они или нет.
1
02.08.2013, 16:04
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
02.08.2013, 16:04

Разница int, short, unsigned int, unsigned short
Есть например цикл который проходит по массиву в котором 100 элементов. В чем...

Ошибка при компиляции error: cannot convert ‘int (*)[5]’ to ‘int**’ for argument ‘1’ to ‘void Replase(int**)'
#include &lt;iostream&gt; #include &lt;ctime&gt; #include &lt;iomanip&gt; #include &lt;cstdlib&gt; ...

В каком случае надо начинать с int main() или с int _tmain( int argc, _TCHAR* argv[] ) и т.д.?
Не понимаю, с чего начинать. Заранее спс.


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

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

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