![]() |
Delphi a C++
Hola amigos de este foro:
Tengo esta linea de código en delphi por favor alguien podría pasármelo a Borland C++
Gracias de antemano. |
Bueno habria que ver que tiene en realidad el puntero Result , lo que pasa es que en C++ para retornar el valor de una funcion se utiliza return que cuando el compilador de c++ lo encuentra de inmediato termina la Funcion, cosa que en Delphi result puedes utilizarla como una variable y el compilador de delphi seguirá ejecutando las lineas de mas abajo si las hay.
Un ejemplo en Delphi-> pero si hacemos el mismo ejemplo en C++Builder Cita:
Cita:
Cita:
Espero que se entienda.;) Saludos...:) |
rgstuamigo ha explicado bastante bien el problema pero hace falta añadir algo. En delphi las cadenas (String) no son como en C. En C el primer elemento de una cadena es el 0 mientras que en delphi es el 1 (el 0 está reservado para el tamaño) Cas cadenas en terminan con un char 0
De esta forma, tenemos que considerar el índice i al traducir y bien usar i-1 o cambiar los límites del bucle... Código:
return aux+S[i-1]+215; |
ayuda con esta funcion !!!
Tengo esta funcion en C++
Código:
String Encrypt(String texto) Por favor alguien podrá corregirmelo. Error apunta a esta linea: Código:
Result = Result + char(Byte(texto[i]) + 255); Cita:
Salu2 Ledian |
Convertir a C++
Amigos esta función la usaba para encriptar texto en Delphi. Ahora no hallo como traducirla al equivalente en C++. Alguien podría ayudarme?
Código:
Function TDM.Encrypt; Ledian |
Amigo(a) Ledian_Fdez trata en lo posible no habrir tantos hilos para la misma cosa ;), tranquilamente en este hilo pudiste continuar con tus dudas. por lo tanto voy a unir ambos hilos;). Y si no lo has hecho te invito a leer la guia de estilo.
|
Escuseme
Ok, es que estoy tan atormentado que no me di cuenta, le ruego que me discupen.
|
Cita:
Pero para mas comprension te pongo el codigo de sobrecarga del operador [] de la clase AnsiString de c++Builder: Cita:
Cita:
Cita:
Nota: Probado en C++Builder 6 Saludos...:) |
Por su puesto que se te entiende, rgstuamigo. AnsiString, como bien dices está diseñada para "emular" las cadenas de delphi desde Builder en el que también se puede trabajar con String. Ambos tipos son en realidad clases en Builder C++. El tema es que no son AnsiC. Es por eso la razón de mi comentario anterior acerca de los índices.
En realidad todo depende de que tipo se usará en la función de Ledian_Fdez, String, AnsiString o char*, cosa que en ningún momento hemos sabido. Yo particularmente prefiero escribir mi código al estilo C/C++ mas puro y en ese sentido prácticamente siempre uso las cadenas como char* (PCHAR), por compatibilidad con otros compiladores y con la API de WIN32 así como por la facilidad intrínseca de recorrerlas. Saludos. |
La franja horaria es GMT +2. Ahora son las 06:28:48. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi