Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

про __intXX

362
20 января 2003 года
_kolyan
339 / / 03.12.2002
Пишу

unsigned int a = /*заначение из базы*/
Edit1->Text = a;

и

unsigned __int32 a = /*значение из базы*/
Edit1->Text = a;

получаются совершенно разные значения, причем правильное первое, хотя вроде int тоже 32 разряда
295
20 января 2003 года
gray_k
356 / / 20.12.1999
Цитата:
Originally posted by _kolyan
Пишу

unsigned int a = /*заначение из базы*/
Edit1->Text = a;

и

unsigned __int32 a = /*значение из базы*/
Edit1->Text = a;

получаются совершенно разные значения, причем правильное первое, хотя вроде int тоже 32 разряда


А разве usigned __int32 вообще существует.
Беру книжку по 5 билдеру Архангельского и вижу:
__int8
__int16
__int32
__int64
unsigned __int 64

362
20 января 2003 года
_kolyan
339 / / 03.12.2002
Цитата:
Originally posted by gray_k

А разве usigned __int32 вообще существует.
Беру книжку по 5 билдеру Архангельского и вижу:
__int8
__int16
__int32
__int64
unsigned __int 64



по крайней мере компиллятор не ругается, но даже если ставить unsigned __int64 то все равно не правильно получается

3
20 января 2003 года
Green
4.8K / / 20.01.2000
Цитата:
Originally posted by _kolyan


по крайней мере компиллятор не ругается, но даже если ставить unsigned __int64 то все равно не правильно получается



Думаю, дело в преобразовании типов.
Насколько помню, TEdit::Text имеет тип AnsiString.
Видимо преобразование unsigned int -> AnsiString определено, а из unsigned _int32 не определено.
Можно попробовать явное промежуточное преобразование:

Edit1->Text = (unsigned int)a;

Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог