Page 1 of 1

Type-Converting

Posted: Thu Sep 18, 2008 5:43 pm
by Leonhard
Wouldn't it be nice to convert types in a line with .type (.i, .c, .q, ...)?

Example:

Code: Select all

Declare var1.i
Declare var2.i

Declare result.i

result = ( (var1).f / (var2).f ).i

; --------------------------------------

Declare str1.s{12} = "Hallo, Welt!"
Declare char.c

char = (str1).c + SizeOf(Character) * 7

Debug (char).s{1}

Posted: Thu Sep 18, 2008 10:26 pm
by Psychophanta
I use simple procedures. Following your code it would be:

Code: Select all

Procedure.f iTof(a.i)
  ProcedureReturn a
EndProcedure

var1.i 
var2.i 

result.i=(iTof(var1)/iTof(var2))

; --------------------

Procedure.c sToc(a$)
  ProcedureReturn PeekC(@a$)
EndProcedure
Procedure$ cTos(a.c,l.l=0)
  If l:ProcedureReturn PeekS(@a,l)
  Else:ProcedureReturn PeekS(@a)
  EndIf
EndProcedure

str1.s{12}="Hallo, Welt!" 
char.c=sToc(str1)+SizeOf(Character)*7
Debug cTos(char,1)

Posted: Fri Sep 19, 2008 7:24 am
by blueznl
Same here, using a procedure...

Posted: Fri Sep 19, 2008 12:04 pm
by DoubleDutch
Didn't notice this when I suggested...

http://www.purebasic.fr/english/viewtopic.php?t=34265