Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - .NET

Страница: 1 |

 

  Вопрос: Long 2 ULong Добавлено: 22.07.06 20:44  

Автор вопроса:  Sacred Phoenix | ICQ: 304238252 
Собсно, сабж. Как конвертировать число типа Long к типу ULong? В том смысле, что знаковое представление нужно изменить на беззнаковое.

Ответить

  Ответы Всего ответов: 7  

Номер ответа: 1
Автор ответа:
 Sharp


Лидер форума

ICQ: 216865379 

Вопросов: 106
Ответов: 9979
 Web-сайт: sharpc.livejournal.com
 Профиль | | #1
Добавлено: 22.07.06 21:15
Прибавить 2^32?

Ответить

Номер ответа: 2
Автор ответа:
 Sacred Phoenix



ICQ: 304238252 

Вопросов: 52
Ответов: 927
 Профиль | | #2 Добавлено: 22.07.06 21:56
2 Sharp: хм, точно!.. Тока прибавлять тогда уж надо 2^64 или Long.MaxValue))) Спасибо!

Ответить

Номер ответа: 3
Автор ответа:
 EROS



Вопросов: 58
Ответов: 4255
 Профиль | | #3 Добавлено: 23.07.06 02:54
Public Shared Function ToUInt64(ByVal value As Long) As ULong
     Member of: System.Convert
Summary:
Converts the value of the specified 64-bit signed integer to an equivalent 64-bit unsigned integer.

Ответить

Номер ответа: 4
Автор ответа:
 EROS



Вопросов: 58
Ответов: 4255
 Профиль | | #4 Добавлено: 23.07.06 03:03
Public Shared Function ToUInt64(ByVal value As Long) As UInt64
      If (value < 0) Then
            Throw New OverflowException(Environment.GetResourceString("Overflow_UInt64";))
      End If
      Return CULng(value)
End Function

 

Ответить

Номер ответа: 5
Автор ответа:
 Sacred Phoenix



ICQ: 304238252 

Вопросов: 52
Ответов: 927
 Профиль | | #5 Добавлено: 23.07.06 11:47
2 EROS: ну я же не насколько ламер, чтобы не знать, как конвертировать типы((( Sharp понял меня правильно, но я объясню.

Что будет, если вызвать
Dim M As Integer
Call CopyMemory(M, &hFFFF, 2)

(пример на vb6)? прально, M = -1. Но мы-то копируем значение 65536! Это пример перевода беззнакового представления к знаковому. Мне надо это же, только наоборот - от знакового к беззнаковому.

Ответить

Номер ответа: 6
Автор ответа:
 Sharp


Лидер форума

ICQ: 216865379 

Вопросов: 106
Ответов: 9979
 Web-сайт: sharpc.livejournal.com
 Профиль | | #6
Добавлено: 23.07.06 14:04
&hFFFF = 65535
MaxValue для беззнаковых целых типов равно 2^b-1, для знаковых 2^(b-1)-1, где b - число бит, а прибавлять надо 2^b

Ответить

Номер ответа: 7
Автор ответа:
 Sacred Phoenix



ICQ: 304238252 

Вопросов: 52
Ответов: 927
 Профиль | | #7 Добавлено: 23.07.06 20:23
тьфу, ошибся на 1))

Ответить

Страница: 1 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам