strdup er en ikke-standard C - programmeringssprogfunktion , der opretter en kopi af den angivne null-terminerede streng på heapen (ved hjælp af malloc ) og returnerer en pointer til den. Gratis skal kaldes for at frigøre den plads, der bruges af den oprettede kopi . Funktionen dukkede op i BSD , er inkluderet i POSIX , men er ikke en del af ANSI/ISO-standarderne, selvom den understøttes af næsten alle compilere.
Prototypen er beskrevet i header-filen string.h:
char* strdup (const char *src);
En pegepind til en kopi af strengen. Hvis hukommelsesallokering mislykkes, oprettes der ingen kopi, og funktionen returnerer NULL.