Try to multiply 2 big longs (the result will be above the long limit). The compiler can't decide if he needs to pickup the long version or the quad version.
It doesn't need to, you should tell the compiler.
Code: Select all
bigvalue1.l = bigvalue1*bigvalue2.l ;too big for long, but still a long
exp.q = bigvalue1*bigvalue2.l ; now the compiler knows, it's a QWord
You declare _every_ var, you have in your code, and if you don't it's the deftype type (long as usual^_^). And I don't want the compiler to change the type I declared.
STR-Problem:
Dare2 is right. If Fred's compiler works different, we must live with it, but Dare2's explanation makes more sense, than any other. The compiler will know the correct data type, so why should the programmer tell the compiler twice?
If I want a long as a string:
str.s = str(longvar)
If I want it as a float:
str.s = str(float(longvar) [,x])