winbase.h


lstrcpyn

La función lstrcpyn copia un número especificado de caracteres desde una cadena a un búfer.

Sintaxis

LPTSTR lstrcpyn(
    LPTSTR lpString1,   // dirección del búfer
    LPCTSTR lpString2,  // dirección de la cadena a copiar
    int iMaxLength      // número de bytes o caracteres a copiar
   );

Parámetros

lpString1: apunta a un búfer dentro del cual la función copia los caracteres. El búfer debe ser lo suficiente grande para contener el número de bytes (versión ANSI) o caracteres (versión Unicode) especificados por iMaxLength, incluyendo espacio para el carácter nulo terminador.

lpString2: apunta a la cadena terminada en nulo a copiar.

iMaxLength: especifica el número de bytes (versión ANSI) o caracteres (versión Unicode) a copiar desde la cadena apuntada por lpString2 al búfer apuntado por lpString1, incluyendo el carácter nulo terminador.

Valor de retorno

Si la función tiene éxito, el valor de retorno es un puntero al búfer.

Si la función falla, el valor de retorno es NULL. Para obtener información adicional sobre le error, llamar a GetLastError.

Observaciones

El búfer apuntado por lpString1 debe ser lo bastante largo para incluir el carácter nulo terminador, y el valor de longitud de cadena especificado por iMaxLength incluye espacio para un carácter nulo terminador. Así que, el código siguiente:

   TCHAR chBuffer[512];
 
   lstrcpyn(chBuffer, "abcdefghijklmnop", 4);

... copia la cadena "abc", seguida de un carácter nulo terminador, a chBuffer.