Funzione StrDupA (shlwapi.h)
Duplica una stringa.
Sintassi
PSTR StrDupA(
PCSTR pszSrch
);
Parametri
pszSrch
Tipo: PCTSTR
Puntatore a una stringa di caratteri con terminazione Null costante.
Valore restituito
Tipo: PTSTR
Restituisce l'indirizzo della stringa copiata oppure NULL se la stringa non può essere copiata.
Commenti
StrDup allocherà la dimensione della stringa originale. Se l'allocazione dell'archiviazione ha esito positivo, la stringa originale viene copiata nella stringa duplicata.
Questa funzione usa LocalAlloc per allocare spazio di archiviazione per la copia della stringa. L'applicazione chiamante deve liberare questa memoria chiamando la funzione LocalFree sul puntatore restituito dalla chiamata a StrDup.
Esempio
Questa semplice applicazione console illustra l'uso di StrDup.
#include <windows.h>
#include <shlwapi.h>
#include <stdio.h>
void main(void)
{
char buffer[] = "This is the buffer text";
char *newstring;
// Note: Never use an unbounded %s format specifier in printf.
printf("Original: %25s\n", buffer);
newstring = StrDup(buffer);
if (newstring != NULL)
{
printf("Copy: %25s\n", newstring);
LocalFree(newstring);
}
}
OUTPUT:
- - - - - -
Original: This is the buffer text
Copy: This is the buffer text
Nota
L'intestazione shlwapi.h definisce StrDup come alias che seleziona automaticamente la versione ANSI o Unicode di questa funzione in base alla definizione della costante del preprocessore UNICODE. La combinazione dell'utilizzo dell'alias indipendente dalla codifica con il codice che non è indipendente dalla codifica può causare mancate corrispondenze che generano errori di compilazione o di runtime. Per altre informazioni, vedere Convenzioni per i prototipi di funzioni.
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Windows 2000 Professional, Windows XP [solo app desktop] |
Server minimo supportato | Windows 2000 Server [solo app desktop] |
Piattaforma di destinazione | Windows |
Intestazione | shlwapi.h |
Libreria | Shlwapi.lib |
DLL | Shlwapi.dll (versione 4.71 o successiva) |