PDA

Visualizza la versione completa : [c] strcopy VS sprintf


ubuntuunixc
17-11-2009, 22:14
Ciao ragazzi

vorrei sapere una cosa qualģč la differenza tra strcopy e sprintf ?

ed inoltre volevo sapere se aldilą della funzione scelta la stinga finale che otterremo conterrą il carattere terminatore '\0' ??????

grazie

MItaly
17-11-2009, 22:52
strcpy (non strcopy) copia semplicemente la stringa di origine nel buffer di destinazione; sprintf consente tutta una serie di operazioni pił avanzate (tra cui la concatenazione di stringhe, la conversione di numeri in stringa, ...) tramite la stringa di formato, esattamente come accade con la printf per l'output su terminale; entrambe aggiungono il NUL finale alla stringa di destinazione.
In ogni caso ti consiglio di utilizzare le loro controparti pił sicure strncpy e snprintf per evitare buffer overrun.

oregon
18-11-2009, 07:28
Originariamente inviato da MItaly

In ogni caso ti consiglio di utilizzare ...

... un qualsiasi tutorial ...

strcpy
http://www.cplusplus.com/reference/clibrary/cstring/strcpy/

strncpy
http://www.cplusplus.com/reference/clibrary/cstring/strncpy/

sprintf
http://www.cplusplus.com/reference/clibrary/cstdio/sprintf/

snprintf
http://digilander.libero.it/uzappi/C/librerie/funzioni/printf.html

Loading