Страница: 1 | 2 |
Вопрос: Помогите с C#
Добавлено: 14.01.12 01:38
Автор вопроса: Ahtoxa
Подскажите пожалуйста как перевести эти 2 куска с C# на VB.NET
и
Ответы
Всего ответов: 29
Номер ответа: 1
Автор ответа:
Ahtoxa
Вопросов: 6
Ответов: 29
Профиль | | #1
Добавлено: 14.01.12 02:27
со вторым куском разобрался
будет так
А вот с первым никак не пойму. uint - это понятно, на бейсике так будет CType(x, UInteger)
Вот немогу понять что это "[k + 1] << 8"
У меня ругается на такой вариант:
Номер ответа: 2
Автор ответа:
Winand
Вопросов: 87
Ответов: 2795
Web-сайт:
Профиль | | #2
Добавлено: 14.01.12 02:38
всего навсего прибавление к /а/ четырехбайтного числа лежащего со смещение /k/ в массиве /url/.
и на что ругается? вообще url и k объявлены?
Номер ответа: 3
Автор ответа:
Ahtoxa
Вопросов: 6
Ответов: 29
Профиль | | #3
Добавлено: 14.01.12 02:42
Operator '<<' is not defined for types 'Char' and 'Integer'.
url As String
k As Integer
Вот весь код на C# http://snipplr.com/view/48906/
Подскажите как перевести такое?
Номер ответа: 4
Автор ответа:
Ahtoxa
Вопросов: 6
Ответов: 29
Профиль | | #4
Добавлено: 14.01.12 02:47
Вот как я перевёл объявление переменных:
Номер ответа: 5
Автор ответа:
Winand
Вопросов: 87
Ответов: 2795
Web-сайт:
Профиль | | #5
Добавлено: 14.01.12 02:55
да я и сам нашел похожий код) http://forums.asp.net/t/1714572.aspx
Суть в том, что нельзя применять оператор сдвига между символом (char) и интеджером. Vb.net в глаза не видел, но я бы попробовал так
как я понимаю более канонично вместо Asc использовать Convert.ToInt32(Char), и может даже малость быстрее
Номер ответа: 6
Автор ответа:
Ahtoxa
Вопросов: 6
Ответов: 29
Профиль | | #6
Добавлено: 14.01.12 14:10
Arithmetic operation resulted in an overflow.
Хелп)))
Номер ответа: 7
Автор ответа:
Winand
Вопросов: 87
Ответов: 2795
Web-сайт:
Профиль | | #7
Добавлено: 14.01.12 21:47
мой режим телепата говорит, что Аск выдаёт знаковый интегер, что вкупе со сдвигом этого числа влево на три октета (<<24) бесславно заканчивается переполнением. Попробуйте вместо Asc использовать Convert.ToUInt32(..)
Номер ответа: 8
Автор ответа:
Winand
Вопросов: 87
Ответов: 2795
Web-сайт:
Профиль | | #8
Добавлено: 14.01.12 21:50
либо тупо в /а/ не влезает получившееся значение и надо юзать uint64
Номер ответа: 9
Автор ответа:
Ahtoxa
Вопросов: 6
Ответов: 29
Профиль | | #9
Добавлено: 14.01.12 22:09
Arithmetic operation resulted in an overflow.
Во время ошибки a=2654435769, k=0 т.е. цикл даже и раз не отрабатывает.
Номер ответа: 10
Автор ответа:
Ahtoxa
Вопросов: 6
Ответов: 29
Профиль | | #10
Добавлено: 14.01.12 22:11
"Arithmetic operation resulted in an overflow." и при "Convert.ToInt32" и "Convert.ToUInt32"
Номер ответа: 11
Автор ответа:
VbStarter
ICQ: 357911808
Вопросов: 118
Ответов: 1340
Web-сайт:
Профиль | | #11
Добавлено: 14.01.12 22:16
если языка не знаешь то есть конвертеры в нете.
Номер ответа: 12
Автор ответа:
VbStarter
ICQ: 357911808
Вопросов: 118
Ответов: 1340
Web-сайт:
Профиль | | #12
Добавлено: 14.01.12 22:18
или так
Номер ответа: 13
Автор ответа:
Winand
Вопросов: 87
Ответов: 2795
Web-сайт:
Профиль | | #13
Добавлено: 14.01.12 22:41
Интересно, тут выполнилось нормально http://ideone.com/ei03L Правда у них Mono.
P.S. сегодня узнал о сайте http://www.convertdatatypes.com Для написания программ теперь даже над конвертацией типов заморачиваться не надо. Люди не нужны будут скоро Как в одной из серий Теории Б.В. шелдон пришёл к кутропали и написал программу, которая заменила его
Номер ответа: 14
Автор ответа:
Ahtoxa
Вопросов: 6
Ответов: 29
Профиль | | #14
Добавлено: 14.01.12 22:43
Ага, я с помощью их и переводил.
и
На оба ругается, на "url(k + 1) << 8" - "Operator '<<' is not defined for types 'Char' and 'Integer'"
Номер ответа: 15
Автор ответа:
Ahtoxa
Вопросов: 6
Ответов: 29
Профиль | | #15
Добавлено: 14.01.12 22:50
Блин, в чём же проблема. У меня та же ошибка:
Arithmetic operation resulted in an overflow
Ну... буду ждать, может кто ещё что посоветует.