как да измамя тъпия VB...
3 отговора
273 прегледа
как да измамя тъпия VB...
Имам декларирани променливи a, b, c и d като byte и
If (a - b) * (c - d) > 0 Then ...
ми дава препълване щото c-d се получава отрицателно число
проблема идва основно в това, че в действителност не са някакви си 4 променливи, а са 25 масива от UDT подобно на това
type blabla
a(4) as byte
b(4) as byte
c(4) as byte
d(4) as byte
...
end type
работя с файлове и дължините е абсурд да ги пипам, а
огледален UDT като посредник към програмата не ми се прави :)
пробвах следната хитрина
Dim bug as variant
bug=1 '''replace "*" with "*bug*"
If (a - b) *bug* (c - d) > 0 Then ...
ама пак нищо не стана
няма ли някаква си функцийка нещо като int() която да преобразува какво да е число в Double или нещо подобно
If (a - b) * (c - d) > 0 Then ...
ми дава препълване щото c-d се получава отрицателно число
проблема идва основно в това, че в действителност не са някакви си 4 променливи, а са 25 масива от UDT подобно на това
type blabla
a(4) as byte
b(4) as byte
c(4) as byte
d(4) as byte
...
end type
работя с файлове и дължините е абсурд да ги пипам, а
огледален UDT като посредник към програмата не ми се прави :)
пробвах следната хитрина
Dim bug as variant
bug=1 '''replace "*" with "*bug*"
If (a - b) *bug* (c - d) > 0 Then ...
ама пак нищо не стана
няма ли някаква си функцийка нещо като int() която да преобразува какво да е число в Double или нещо подобно
Re: как да измамя тъпия VB...
Има CDbl. Трябва да има и CByte за да обърнеш крайния резултат отново в байт
Re: как да измамя тъпия VB...
if CDbl(израз)>0
така ли да го изпиша?
още не съм пробвал нямам време, ако е така може и да не отговаряш
така ли да го изпиша?
още не съм пробвал нямам време, ако е така може и да не отговаряш
Re: как да измамя тъпия VB...
Funkciata Cbl(...) moje da konvertira chislo vav chislo s Double precision. Ako vatre zapishesh izraz - to togava parvo shte bade presmetnat izraza, i togava shte se izvarshva konvertiraneto, koeto - sam mojesh da se setish dali shte pomogne v sluchaia. No mojesh da izpozvash CDbl() pootdelno za vsiaka promenliva predi tia da uchastva v izraz, ili vatre v izraza da zapisvash promenlivite zagradeni s funkciata CDbl(). ;o)
Uspeh.
Щирлиц
Uspeh.
Щирлиц