Ver Mensaje Individual
  #9  
Antiguo 28-04-2004
Avatar de Al González
[Al González] Al González is offline
In .pas since 1991
 
Registrado: may 2003
Posts: 5.604
Reputación: 30
Al González Es un diamante en brutoAl González Es un diamante en brutoAl González Es un diamante en brutoAl González Es un diamante en bruto
Smile Todo tiene un por qué

¡Hola a todos!

Cita:
Empezado por roman
...Copy ya viene incluida con Delphi y devolverá una cadena vacía...
Tu lo has dicho: una cadena, por lo que su resultado no será directamente asignable a una variable Char, o evaluable en un estatuto Case, por ejemplo. Y como el tema es Extraer el primer caracter de un string.

Entiendo que la función Copy resuelve por si sóla muchas situaciones donde necesitamos una subcadena de uno o varios caracteres. La utilizo en muchos casos. Pero, por ejemplo, resulta más práctico:
Código:
Case CaracCade (Cadena) Of
  'A' : Result := 10;
  'B' : Result := 9;
  'C' : Result := 8;
  Else
    Result := 0;
End;
que
Código:
C := Copy (Cadena, 1, 1);
Result := 0;

If C <> '' Then
  Case C [1] Of
    'A' : Result := 10;
    'B' : Result := 9;
    'C' : Result := 8;
  End;
ó
Código:
Result := 0;

If Cadena <> '' Then
  Case Copy (Cadena, 1, 1) [1] Of
    'A' : Result := 10;
    'B' : Result := 9;
    'C' : Result := 8;
  End;
Es evidente la simplificación que se logra. Los invito a que se ahorren cientos de líneas y horas de programación utilizando estas funciones de su humilde servidor.

¡Un abrazo!

Al González .

Última edición por Al González fecha: 28-04-2004 a las 08:03:07.
Responder Con Cita