Título: Como realizo una resta en tipos definidos por el usuario? (Con LSet y uLong¿?) Publicado por: EddyW en 21 Agosto 2011, 22:18 pm Hola,
No pude pensar en un mejor título que describa el topic, lamento eso :P Quiero realizar una resta de 2 números de 16 Bytes, pero es un UDT.. Código
Pensé en restar One.A con Two.A, y así sucesivamente, pero no funciona (De todas formas no tiene lógica para funcionar así), No se si esto sirva, pero más o menos es lo que debería devolver: Citar ONE . TWO . RES Más o menos creo que capta la idea ..A 3539000 . 3145782 . 3145784 B 3276852 . 3145778 . 3145780 C 2097200 . 2097184 . 2097200 D 2097184 . 2097184 . 2097184 =86420 . =6020 . =80400 Alguna ayuda :P SaluDOS!!! Título: Re: Como realizo una resta en tipos definidos por el usuario? (Con LSet y uLong¿?) Publicado por: BlackZeroX en 21 Agosto 2011, 22:55 pm pues...
Para hacer la resta debes pasar los strings a numero... (Ni siquiera te acercas a los numeros de la string). Al hacer el LSET lo que andas haciendo es que SOLO COPIAS los bytes tal cuales de un UDT a otro UDT, es decir que tan solo el string "6420" es el numero "9007336695791664", es decir un numero de 8 Bytes (Double)... asi que la operacion matematica que tu planteas esta alocada... Cada caracter de una string son 2 bytes es decir que en un tipo long solo caben dos caracteres... aun que esto creo que ya lo sabes por que en el UDT tStr creas un buffer adecuado a el UDT cD. El metodo es mas complicado aun (Debes crear una funcion que sume). Dulces Lunas!¡. Título: Re: Como realizo una resta en tipos definidos por el usuario? (Con LSet y uLong¿?) Publicado por: BlackZeroX en 21 Agosto 2011, 23:20 pm Mirate este ejemplo d eloq ue digo, es complicado hacer una resta como la quieres hacer... Código
Dulces Lunas!¡. Título: Re: Como realizo una resta en tipos definidos por el usuario? (Con LSet y uLong¿?) Publicado por: EddyW en 21 Agosto 2011, 23:39 pm Precisamente estaba pensando en esos 2 Bytes, gracias por aclarar, me va ha servir tu ejemplo ;)
Tengo otra duda que me saltó, por que esto 'esta mal'? Código
Supongo que es por que es una variable dinámica, pero ¿no hay forma?, SaluDOS!!! Título: Re: Como realizo una resta en tipos definidos por el usuario? (Con LSet y uLong¿?) Publicado por: BlackZeroX en 21 Agosto 2011, 23:49 pm lo que pasa es que:
L() As Byte Se trata como puntero a una structura SafeArray... que a su vez tiene un miembro pvData que apunta al 1er indice del array. Dulces Lunas!¡. |