powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / CInt(Chr(Ch) & Chr(Ch2))
7 сообщений из 7, страница 1 из 1
CInt(Chr(Ch) & Chr(Ch2))
    #33432275
leaf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
CInt(Chr(Ch) & Chr(Ch2))

объясните плиз что это значит
примерно знаю но хочу слышать от профи
желательно с примерами .....
Ну например
Ch=55
Ch2=33
какой будет результат
Самое не ясное как работает CInt от объединения символов
по описанию - это преобразование с округлением к целому, но от строки как и что?
...
Рейтинг: 0 / 0
CInt(Chr(Ch) & Chr(Ch2))
    #33432320
leafКакой будет результат?
Type mismatch.

Chr(55) = 7
Chr(33) = !
Chr(55) & Chr(33) = 7!

CInt - функция, выполняющая преобразование ЧИСЕЛ из одного типа данных в другой. 7! - сам понимаешь, не число.

Если тебе нужно возвратить числа - воспользуйся функцией Val(строка).

Val(Chr(55) & Chr(33)) = 7
...
Рейтинг: 0 / 0
CInt(Chr(Ch) & Chr(Ch2))
    #33432345
leaf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
нет функция работает
кроме того у ней хитрое округление до ближайшего четного
это не мой фрагмент кода
мне нужно перевести на фокспро

если уж совсем точно, то

Chr(55) = "7"

leaf Ch = Asc(Mid(A, I, 1))
I = I + 1
If Ch <= 127 Then
If I <= LenA Then
Ch2 = Asc(Mid(A, I, 1))
Else
Ch2 = 0
End If
If (48 <= Ch) And (Ch <= 57) And _
(48 <= Ch2) And (Ch2 <= 57) Then
I = I + 1
If BInd = 0 Then
CurMode = "C"
BCode(BInd) = 105
BInd = BInd + 1
ElseIf CurMode <> "C" Then
CurMode = "C"
BCode(BInd) = 99
BInd = BInd + 1
End If
BCode(BInd) = CInt(Chr(Ch) & Chr(Ch2))
BInd = BInd + 1
...
Рейтинг: 0 / 0
CInt(Chr(Ch) & Chr(Ch2))
    #33432356
TIKO
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
функция Chr(номер символа)

возвращает символ по кодовому номеру в данном случае
Cint не имеет смысла поскольку Cint округляет числовое значние

например CInt(12.6) = 13
а что бы перобразовать строковое значение в числовое используется функция Val("12 привет") = 12
по примеру будет вернеее этот код
s = Val((Chr(55) & Chr(33)))
результат s=7
в этом примере возввращается строковая переменная где Ch,Ch2=код символа Cint(Chr(Ch) & Chr(Ch2)) не очень корректно и не правильно
или так Clng(Asc("s") & Acs("t")) a Cint заменяется Clng
и ввобще что Cint и Clng не имеют никогого положительного эффекта на данное уравнение все равно возварт (Asc("s") & Acs("t")) будет числом
а Val((Chr(55) & Chr(33))) преобразует в число
...
Рейтинг: 0 / 0
CInt(Chr(Ch) & Chr(Ch2))
    #33432389
leaf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
я Вас понимаю
и сам в прострации...
по смыслу Ch и Ch2 в лучшем случае целые числа
их объединение даст в лучшем случае целое число .....
короче поэтому и спрашиваю
может еще есть какие идеи?
...
Рейтинг: 0 / 0
CInt(Chr(Ch) & Chr(Ch2))
    #33432427
TIKO
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
попробуй так
если число возвращает в разрезе Integer то
s=Cint(Val(Chr(55) & Chr(33))) s=Integer
если число возвращает в разрезе Long то
s=CLng(Val(Chr(55) & Chr(33))) s=Long
...
Рейтинг: 0 / 0
CInt(Chr(Ch) & Chr(Ch2))
    #33432459
leaf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
пока не могу ничего сказать
разбираюсь
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / CInt(Chr(Ch) & Chr(Ch2))
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]