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 では、AnsiString から PAnsiChar 値を取得することができるため、NULL で終わる文字列を想定している C や C++ のアプリケーションとシームレスに統合することができます。
PAnsiChar は、Delphi 次世代(モバイル)コンパイラではサポートされていませんが、Delphi デスクトップ コンパイラでは使用できます。
メモ:
- PAnsiChar は、通常の AnsiString 値と組み合わせて使用されると、本質的に安全ではありません。 PAnsiChar 変数では、参照カウントもコピーオンライトも行われません。 そのため、AnsiString 値の破損やメモリ リークが起きる可能性があります。
- PAnsiChar は、Delphi デスクトップ コンパイラで使用されるますが、Delphi モバイル コンパイラではサポートされていません。 詳細については、「デスクトップ アプリケーションからモバイル アプリケーションへの Delphi コードの移行」を参照してください。
警告: 文字ポインタ型でない型を PAnsiChar に型キャストしてポインタ算術演算を行わないでください。 代わりに PByte ポインタ型を使用してください。こちらの型は {$POINTERMATH ON} コンパイラ指令を付けて宣言されています。