|
|
|
CInt(Chr(Ch) & Chr(Ch2))
|
|||
|---|---|---|---|
|
#18+
CInt(Chr(Ch) & Chr(Ch2)) объясните плиз что это значит примерно знаю но хочу слышать от профи желательно с примерами ..... Ну например Ch=55 Ch2=33 какой будет результат Самое не ясное как работает CInt от объединения символов по описанию - это преобразование с округлением к целому, но от строки как и что? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.12.2005, 10:47:20 |
|
||
|
CInt(Chr(Ch) & Chr(Ch2))
|
|||
|---|---|---|---|
|
#18+
leafКакой будет результат? Type mismatch. Chr(55) = 7 Chr(33) = ! Chr(55) & Chr(33) = 7! CInt - функция, выполняющая преобразование ЧИСЕЛ из одного типа данных в другой. 7! - сам понимаешь, не число. Если тебе нужно возвратить числа - воспользуйся функцией Val(строка). Val(Chr(55) & Chr(33)) = 7 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.12.2005, 11:01:40 |
|
||
|
CInt(Chr(Ch) & Chr(Ch2))
|
|||
|---|---|---|---|
|
#18+
нет функция работает кроме того у ней хитрое округление до ближайшего четного это не мой фрагмент кода мне нужно перевести на фокспро если уж совсем точно, то 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 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.12.2005, 11:07:44 |
|
||
|
CInt(Chr(Ch) & Chr(Ch2))
|
|||
|---|---|---|---|
|
#18+
функция 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))) преобразует в число ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.12.2005, 11:10:46 |
|
||
|
CInt(Chr(Ch) & Chr(Ch2))
|
|||
|---|---|---|---|
|
#18+
я Вас понимаю и сам в прострации... по смыслу Ch и Ch2 в лучшем случае целые числа их объединение даст в лучшем случае целое число ..... короче поэтому и спрашиваю может еще есть какие идеи? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.12.2005, 11:20:07 |
|
||
|
CInt(Chr(Ch) & Chr(Ch2))
|
|||
|---|---|---|---|
|
#18+
попробуй так если число возвращает в разрезе Integer то s=Cint(Val(Chr(55) & Chr(33))) s=Integer если число возвращает в разрезе Long то s=CLng(Val(Chr(55) & Chr(33))) s=Long ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.12.2005, 11:27:50 |
|
||
|
|

start [/forum/topic.php?fid=60&msg=33432320&tid=2166711]: |
0ms |
get settings: |
7ms |
get forum list: |
14ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
53ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
52ms |
get tp. blocked users: |
1ms |
| others: | 187ms |
| total: | 329ms |

| 0 / 0 |
