![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
#21
|
||||
|
||||
|
Hola,
Voy a extractar de cierto libro titulado El gran libro de Delphi 2, de Jens Herber, Jörg Herbes y Jörg Rensmann, traducido por varios autores. No los nombro pero sin ellos, etc. Cita:
|
|
#22
|
|||
|
|||
|
Cita:
Código:
var
Variable:char;
begin
Variable:= 'A';
writeln(Format('%d',[Ord(Variable)])); // imprime 65
writeln(Format('%c',[Variable])); // imprime el caracter 'A';
end;
|
|
#23
|
||||
|
||||
|
Hola Mick.
Eso lo tengo claro, pero yo lo que quiero decir es que como se almacena dentro del ejecutable este formateo que indicas, es decir, cuando se estan ejecutando los ceros y unos ¿donde está escrito que sea una 'A' ó un 65? Saludos a todos |
|
#24
|
|||
|
|||
|
Cita:
Unicamente esta escrito que se imprima como A o como 65 directamente en la funcion que utilices para ordenar la impresion, o queda implicito por el tipo de variable, es decir: Si tenemos declarada esta variable de tipo caracter: var Car:Char; Y si usamos Format: Format('%c',65); El %c que se pasa como parametro a la funcion Format le indica que el segundo parametro debe ser tratado como un codigo ascii. En el caso de usar funciones normales de pascal como: write(Car); Al ser delphi un lenguaje fuertemente tipado y estar definidos los tipos de variables previamente, el compilador sabe que Car debe tratarse como un caracter. Luego en realidad el compilador va a sustituir write por WriteChar, de modo que enn la realidad se estaria llamando a la funcion: WriteChar(Car); Es decir se llama a una funcion WriteChar que imprime solo caracteres y que trata siempre al valor que se le pase como un caracter. Si Car fuera de tipo string, el compilador sustiye el Write por un WriteString(Car); Etc, para el resto de tipos de variables. Si hacemos Write(caracter, string); En realidad el compilador lo sustituira por algo como: WriteChar(caracter); WriteString(string); Saludos Miguel |
![]() |
| Herramientas | Buscar en Tema |
| Desplegado | |
|
|
|