Funcion para copiar cadenas

06/04/2004 - 20:44 por Hugo | Informe spam
Hola,
alguien sabe de alguna función en la que le pueda decir
copiame de la posición 4 a 8 en otra cadena (por
ejemplo)?

Grácias!
 

Leer las respuestas

#1 Cholo Lennon
06/04/2004 - 21:28 | Informe spam
Si usas C puedes utilizar 'strncpy':

char pszOrigen[] = "Esto es una prueba";
char pszDestino[10];

// Copia desde la posicion 5 (ojo empieza en 0) 6 caracteres
strncpy(pszDestino, &pszOrigen[5], 6);
pszDestino[6] = 0; // fin de cadena
printf("Resultado = %s", pszDestino); // Imprime 'es una'

En C++ puedes usar el método substr de la clase string de STL:

using namespace std;
string strOrigen = "Esto es una prueba";
string strDestino;

// Copia desde la posicion 5 (ojo empieza en 0) 6 caracteres
strDestino = strOrigen.substr(5, 6);
cout << "Resultado = " << strDestino << endl; // Imprime 'es una'

En C++, pero utilizando MFC/WTL puedes usar el método Mid de CString

CString strOrigen = "Esto es una prueba";
CString strDestino;

// Copia desde la posicion 5 (ojo empieza en 0) 6 caracteres
strDestino = strOrigen.Mid(5, 6);
TRACE("Resultado = %s", (LPCTSTR)strDestino); // Imprime 'es una'


Saludos
Cholo Lennon
Salta, ARG

Preguntas similares