Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Otros entornos y lenguajes > C++ Builder
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 11-07-2016
Avatar de Ñuño Martínez
Ñuño Martínez Ñuño Martínez is offline
Moderador
 
Registrado: jul 2006
Ubicación: Ciudad Catedral, Españistán
Posts: 6.025
Poder: 28
Ñuño Martínez Tiene un aura espectacularÑuño Martínez Tiene un aura espectacular
Cuando trabajas con textos en C nunca hay que olvidar que las constantes de cadena son punteros y no realmente una cadena como en Pascal. En C++ estos pueden convertirse en objetos "string" haciendo la cosa algo más sencilla; me han dicho que desde el C99 la cosa ha mejorado mucho, aunque no lo he comprobado. La última vez que usé C++ los objetos "string" se comportaban a veces como cadenas Pascal y otras como punteros C, según le diera el aire, lo cual era un dolor en algunas ocasiones (errores difíciles de localizar). Si han arreglado eso, bien por ellos.
Responder Con Cita
  #2  
Antiguo 12-07-2016
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 38
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola.

Si, como te comentan, es importante diferenciar el C-string de las clases string de C++(STL) y AnsiString de C++ Builder (VCL).

El primero es un arreglo de caracteres terminado en '\0'. Un C-string que almacena la palabra "hola" contiene cinco caracteres: 'h', 'o', 'l', 'a', '\0'.

Por otro lado existe una fuerte relación entre punteros y arreglos en C:
Código PHP:
{
  
char cad [] = "hola ";
  
charpcad = &cad[0]; // comúmente sólo: &cad
  
  //entonces se ve que: 
  
printf("%c %c"cad[0], *(pcad+0)); // h h
  
printf("%c %c"cad[1], *(pcad+1)); // o o 
Es tán intrínseca esa relación, que es muy común ver inicializar variables así:
Código PHP:
{
  
charcad "hola ";
  
  
printf("%c %c"cad[0], *cad); // h h 
La clase AnsiString es el análogo C++ Builder a las cadenas largas de Delphi (AnsiString).
En cuanto a las clases string (STL) y AnsiString (VCL), aunque no son iguales, permiten funcionalidades similares a la hora de asignar y concatenar.

string (STL):
Código PHP:
...
#include<string>

int main()
{
  
std::string s1 "hola ";
  
std::string s2 "mundo";
  
std::string s3 s1 s2
AnsiString (VCL):
Código PHP:
#include <vcl.h>
...
{
  
AnsiString s1 "hola "
  
AnsiString s2 "mundo";
  
AnsiString s3 s1 s2
Saludos
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Como recortar de una longitud de cadenas en c# uper .NET 1 12-11-2009 09:20:14
Cómo Unir archivos avi carmelina Varios 1 22-04-2009 13:01:39
como unir sql y delphi??? jermy MySQL 4 11-01-2007 23:23:51
Como concateno cadenas en Firebird?¿? burasu Firebird e Interbase 6 21-07-2004 13:38:29
Como Grabar Cadenas Media? Alejandro_J Varios 0 20-05-2003 18:06:30


La franja horaria es GMT +2. Ahora son las 12:36:28.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi