EOF
Développer Réduire
Cet article a fait l'objet d'une traduction automatique. Déplacez votre pointeur sur les phrases de l'article pour voir la version originale de ce texte. Informations supplémentaires.
Traduction
Source
Ce sujet n'a pas encore été évalué - Évaluez ce sujet

_splitpath, _wsplitpath

Divisez un nom de chemin d'accès dans les composants. Plus les versions sécurisées de ces fonctions sont disponibles, consultez _splitpath_s, _wsplitpath_s.

void _splitpath(
   const char *path,
   char *drive,
   char *dir,
   char *fname,
   char *ext 
);
void _wsplitpath(
   const wchar_t *path,
   wchar_t *drive,
   wchar_t *dir,
   wchar_t *fname,
   wchar_t *ext 
);
path

Chemin d'accès complet.

drive

Lettre de lecteur, suivi d'un signe deux-points (:). vous pouvez passer NULL pour ce paramètre si vous n'avez pas besoin de la lettre de lecteur.

dir

Chemin d'accès du répertoire, y compris la barre oblique finale. Les barres obliques ( / ), les barres obliques inverses ( \ ), ou elles peuvent être utilisées. Vous pouvez passer NULL pour ce paramètre si vous n'avez pas besoin du chemin d'accès au répertoire.

fname

Nom du fichier de base (aucune extension). Vous pouvez passer NULL pour ce paramètre si vous n'avez pas besoin de nom de fichier.

ext

Extension du nom de fichier, y compris la principale point (.). vous pouvez passer NULL pour ce paramètre si vous n'avez pas besoin de l'extension du nom de fichier.

la fonction d' _splitpath divise un chemin d'accès dans ses quatre composants. _splitpath gère automatiquement les arguments de chaîne de caractères multioctets comme approprié, l'identification des séquences de caractères multioctets d'après la page de codes multioctets en cours de utilisation. _wsplitpath est une version à caractère élargi d' _splitpath; les arguments à _wsplitpath sont des chaînes à caractères larges. Ces fonctions se comportent de sinon.

La remarque sur la sécuritéces fonctions entraînent un risque potentiel provoqué par un dépassement de mémoire tampon. Les dépassements de mémoire tampon sont une méthode fréquente d'attaque de système, ce qui entraînerait une élévation de privilège injustifiée. Pour plus d'informations, consultez Solutions contre les dépassements de mémoire tampon. plus les versions sécurisées de ces fonctions sont disponibles ; consultez _splitpath_s, _wsplitpath_s.

mappages de routines de texte générique

routine de TCHAR.H

_MBCS & de _UNICODE non défini

_MBCS défini

_UNICODE défini

_tsplitpath

_splitpath

_splitpath

_wsplitpath

Chaque composant du chemin d'accès complet est stocké dans une mémoire tampon distincte ; les constantes manifestes _MAX_DRIVE, _MAX_DIR, _MAX_FNAME, et _MAX_EXT (défini dans STDLIB.H) spécifiez la taille maximale pour chaque composant de fichier. Les composants de fichier qui sont plus importants que les constantes manifestes correspondantes provoquent l'altération du tas.

Chaque mémoire tampon doit être le plus grande que sa constante de manifeste correspondante pour éviter un dépassement de mémoire tampon potentiel.

Le tableau suivant répertorie les valeurs des constantes manifestes.

Nom

Valeur

_MAX_DRIVE

3

_MAX_DIR

256

_MAX_FNAME

256

_MAX_EXT

256

Si le chemin d'accès complet ne contient pas de composant (par exemple, un nom de fichier), _splitpath assigne des chaînes vides aux mémoires tampons sources correspondantes.

Vous pouvez passer NULL à _splitpath pour tout paramètre autre que pathà partir duquel vous n'avez pas besoin.

si path est NULL, le gestionnaire de paramètre non valide est appelé, comme décrit dans Validation des paramètres. Si est autorisé à l'exécution de se poursuivre, errno est défini à EINVAL et la fonction retourne EINVAL.

routine

en-tête requis

_splitpath

<stdlib.h>

_wsplitpath

<stdlib.h> ou <wchar.h>

Pour des informations de compatibilité supplémentaires, consultez compatibilité dans l'introduction.

Consultez l'exemple pour _makepath.

Non applicable. Pour appeler la fonction C standard, utilisez PInvoke. Pour plus d'informations, consultez l' exemples d'appel de code non managé.

Cela vous a-t-il été utile ?
(1500 caractères restants)

Ajouts de la communauté

AJOUTER
© 2013 Microsoft. Tous droits réservés.