System.PAnsiChar

De RAD Studio API Documentation
Aller à : navigation, rechercher

Delphi

type PAnsiChar = ^AnsiChar;

C++

typedef char*                PAnsiChar;        //

Propriétés

Type Visibilité  Source Unité  Parent
pointer
typedef
public
System.pas
sysmac.h
System System

Description

Définit une chaîne ANSI terminée par le caractère null.

PAnsiChar définit un pointeur sur un emplacement mémoire qui contient des valeurs AnsiChar (y compris le caractère #0).

Dans Delphi, on peut obtenir une valeur PAnsiChar d'un AnsiString, permettant une intégration en douceur avec les applications C ou C++ qui s'attendent à des chaînes terminées par null.

PAnsiChar n'est pas supporté par les compilateurs Delphi de prochaine génération (mobiles), mais est utilisé par les compilateurs de bureau Delphi.

Remarques : 

  • PAnsiChar est par nature pas sécurisé s'il est utilisé en combinaison avec des valeurs AnsiString normales. Les PAnsiChars ne sont pas intégrés dans le comptage de références et la fonctionnalité "copy-on-write" n'est pas utilisée. Cela peut conduire à une corruption des valeurs AnsiString ou à des pertes de mémoire.
  • PAnsiChar est utilisé par les compilateurs de bureau Delphi, mais n'est pas supporté par les compilateurs mobiles Delphi. Pour de plus amples informations, voir Migration du code Delphi en mobile depuis le bureau.

Avertissement :  Ne transtypez pas des types de pointeurs non caractères en PAnsiChar pour faire une arithmétique de pointeur. Utilisez à la place le type de pointeur PByte, qui est déclaré avec la directive {$POINTERMATH ON} du compilateur.

Voir aussi