![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|||||||
| Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Buscar | Temas de Hoy | Marcar Foros Como Leídos |
![]() |
|
|
Herramientas | Buscar en Tema | Desplegado |
|
|
|
#1
|
|||
|
|||
|
La difrencia está en que con auxi:string[30] limitas la variable a un máximo de 30 caracteres.
Saludos. |
|
#2
|
||||
|
||||
|
Lo que pasa que auxi[x] es un array, que porq te da error?? a menos que digas cual es el error y en que linea te da lo demas seria tratar de adivinar, para hacer lo que quieres tienes la funcion copy(auxi, x, y) donde "x" es el numero de caracter que quieres leer y "y" es la cantidad que deseas leer a partir de ese caracter.
__________________
...Yo naci en esta ribera del arauca vibr@d0r Soy hermano de la espuma, de la garza, de la rosa y del sol... Viva Venezuela |
|
#3
|
|||
|
|||
|
Hola, gracias por contestar. Me fué de gran utilidad la función copy(source,x,y) porque asi puedo manipular caracter por caracter, pero ahora cuando voy a hacerlo me manda otro error. Es que tengo que comparar si un caracter es igual a ' " ' y si no es igual guardo el caracter en una variable que tengo de tipo string, pero ahi es donde tengo problemas, me dice que no puedo hacerlo porque una es de tipo char y la otra de tipo string y no entiendo supuestamente las dos son string, entonces porque me dice eso. Si me aclararan la duda se los agradecería mucho...
|
|
#4
|
||||
|
||||
|
lo que pasa es que esa funcion copy devuelve es un valor char
no tengo delphi a mano pero de pronto y esto te funciona:
en caso extremo
te digo que de pronto ni compile, pero por intentar nada se pierde, recuerda lo hice sin delphi asi q disculpa cualquier error
__________________
...Yo naci en esta ribera del arauca vibr@d0r Soy hermano de la espuma, de la garza, de la rosa y del sol... Viva Venezuela |
|
#5
|
||||
|
||||
|
A mi me parece que ambos se están confundiendo y se están yendo por una camino equivocado e innecesario.
Cualquier string, sea dinámico o estático, puede accederse caracter por caracter como si fuera un arreglo- que no lo es.
Sólamente hay que tener cuidado en que los índices no excedan los límites (desde 1 hasta la longitud del string), incluso en los string dinámicos. En el ejemplo no se puede acceder a S[100] por ejemplo. Al menos no de manera segura ya que se exponen a una violación de acceso. En el caso de strings estáticos no podrán exceder del límite declarado (30 en este caso) y en los dinámicos no podrán exceder de lo que actualmente contenga el string (en este caso 4 letras) a no ser que explícitamente se le asigne una longitud:
Abandonar la idea original de acceder de esta forma a los caracteres individuales del string no me parece correcto ya que es mucho más eficiente esto si se requiere tratar los caracteres individualmente que haciendo uso de la función Copy para acceder a cada caracter. Por otro lado, la función Copy regresa un string, no un caracter, puesto que sirve para tomar porciones de una cadena y no sólo caracteres individuales. Creo que lo mejor sería que Luli especificara cuáles son los errores que le salen ya que hasta ahora aún no lo ha hecho. // Saludos |
|
#6
|
|||
|
|||
|
Hola, muchas gracias por contestar, la verdad si, no he especificado los errores, bueno lo primero, lo de que no podía manipular caracter por caracter del string es cierto, vamos, no sabía como hacerlo por eso pregunté, lo que yo hacía era algo así: tengo una variable tipo string llamada cadena, bueno en esa guardo todo lo que escribí en un TMemo y ahora tengo que manipular el primer caracter de cadena, entonces escribí,
Código PHP:
Ahora lo que hice es que en donde se va guardando el caracter que me da el resultado de la función copy, es un arreglo y asi ya no me sale el error de incompatible char and string, tambien pensé que es mucha complicación para algo que parece tan sencillo, no tanto si llegara hasta ahí, sino porque después necesité que cuando lo que se escribe en el TMemo fuera una variable, (es decir solo letras sin comillas que le precedieran) la busque en una tabla de variables que ya existe en el programa y entonces como el dato que se va a buscar esta en un arreglo, hice de todo lo que se me ocurrió hasta que al parecer lo logré, pero si se me hace que sería más sencillo si pudiera manipular directamente un elemento x de un string, asi que si alguien conoce o supone que error estaba cometiendo le agradecería que me lo hiciera saber, sale? muchas gracias por el tiempo, hasta pronto |
|
#7
|
|||
|
|||
|
Hola, mil disculpas, es que cuando vi lo que escribí me di cuenta de un error en el codigo, esa no es la parte en donde me da el error, es aqui:
Código PHP:
|
![]() |
| Herramientas | Buscar en Tema |
| Desplegado | |
|
|
|