| |
|
| represent ( r c_addr u -- n f1 f2 ) float |
represent ( r c_addr u -- n f1 f2 ) float |
| char *sig; |
char *sig; |
| |
size_t siglen; |
| int flag; |
int flag; |
| int decpt; |
int decpt; |
| sig=ecvt(r, u, &decpt, &flag); |
sig=ecvt(r, u, &decpt, &flag); |
| n=(r==0 ? 1 : decpt); |
n=(r==0. ? 1 : decpt); |
| f1=FLAG(flag!=0); |
f1=FLAG(flag!=0); |
| f2=FLAG(isdigit((unsigned)(sig[0]))!=0); |
f2=FLAG(isdigit((unsigned)(sig[0]))!=0); |
| memmove(c_addr,sig,u); |
siglen=strlen(sig); |
| |
memcpy(c_addr,sig,siglen); |
| |
memset(c_addr+siglen,'0',u-siglen); |
| |
|
| >float ( c_addr u -- flag ) float to_float |
>float ( c_addr u -- flag ) float to_float |
| ""Actual stack effect: ( c_addr u -- r t | f ). Attempt to convert the |
""Actual stack effect: ( c_addr u -- r t | f ). Attempt to convert the |