System.PAnsiChar
Delphi
type PAnsiChar = ^AnsiChar;
C++
typedef char* PAnsiChar; //
プロパティ
種類 | 可視性 | ソース | ユニット | 親 |
---|---|---|---|---|
pointer typedef |
public | System.pas sysmac.h |
System | System |
説明
NULL で終わる ANSI 文字列を表します。
PAnsiChar は、AnsiChar 値があるメモリの場所へのポインタを定義します(#0 文字を含む)。
Delphi では、PAnsiChar 値を AnsiString から取得することができ、null 終端文字列を想定する C や C++ のアプリケーションとシームレスな統合を可能にしています。
PAnsiChar は、Delphi の次世代(モバイル)コンパイラではサポートされていませんが、Delphi デスクトップ コンパイラによって使用されています。
Notes:
- PAnsiChar は、通常の AnsiString 値と組み合わせて使用すると、本質的には安全ではありません。PAnsiChar 変数は参照カウントされず、また、書き込み時にコピーされません。これにより、AnsiString 値の破壊やメモリーリークを起こす可能性があります。
- Delphi デスクトップまたはモバイルのコンパイラによって使用される PAnsiChar については、「デスクトップ アプリケーションからモバイル アプリケーションへの Delphi コードの移行」を参照してください。
警告: ポインタ演算を行うために、文字以外のポインタ型を PAnsiChar へキャストしてはいけません。代わりに、{$POINTERMATH ON} コンパイラ指令で宣言される、PByte ポインタ型を使用します。