Bagikan melalui


Makro Konversi String

Makro ini menyediakan fitur konversi string.

Makro Konversi String ATL dan MFC

Makro konversi string yang dibahas di sini valid untuk ATL dan MFC. Untuk informasi selengkapnya tentang konversi string MFC, lihat TN059: Menggunakan Makro Konversi MFC MBCS/Unicode dan Makro MFC dan Global.

Makro Konversi String DEVMODE dan TEXTMETRIC

Makro ini membuat salinan struktur DEVMODE atau TEXTMETRIC dan mengonversi string dalam struktur baru ke jenis string baru. Makro mengalokasikan memori pada tumpukan untuk struktur baru dan mengembalikan penunjuk ke struktur baru.

MACRONAME( address_of_structure )

Keterangan

Contohnya:

DEVMODEW* lpw = DEVMODEA2W(lpa);

dan:

TEXTMETRICW* lptmw = TEXTMETRICA2W(lptma);

Dalam nama makro, jenis string dalam struktur sumber berada di sebelah kiri (misalnya, A) dan jenis string dalam struktur tujuan ada di sebelah kanan (misalnya, W). Singkatan dari LPSTR, OLE adalah singkatan dari LPOLESTR, T singkatan dari LPTSTR, dan W adalah singkatan dari LPWSTR.

Dengan demikian, DEVMODEA2W menyalin DEVMODE struktur dengan string LPSTR ke dalam DEVMODE struktur dengan string LPWSTR, TEXTMETRICOLE2T menyalin TEXTMETRIC struktur dengan string LPOLESTR ke dalam TEXTMETRIC struktur dengan string LPTSTR, dan sebagainya.

Dua string yang dikonversi dalam DEVMODE struktur adalah nama perangkat (dmDeviceName) dan nama formulir (dmFormName). DEVMODE Makro konversi string juga memperbarui ukuran struktur (dmSize).

Empat string yang dikonversi dalam TEXTMETRIC struktur adalah karakter pertama (tmFirstChar), karakter terakhir (tmLastChar), karakter default (tmDefaultChar), dan karakter pemisah (tmBreakChar).

Perilaku DEVMODE makro konversi string dan TEXTMETRIC tergantung pada direktif kompilator yang berlaku, jika ada. Jika jenis sumber dan tujuan sama, tidak ada konversi yang terjadi. Arahan kompilator mengubah T dan OLE sebagai berikut:

Direktif kompilator berlaku T menjadi OLE menjadi
tidak ada A W
_UNICODE W W
OLE2ANSI A A
_UNICODE dan OLE2ANSI W A

Tabel berikut mencantumkan DEVMODE makro konversi string dan TEXTMETRIC .

DEVMODE makro TEXTMETRIC makro
DEVMODEA2W TEXTMETRICA2W
DEVMODEOLE2T TEXTMETRICOLE2T
DEVMODET2OLE TEXTMETRICT2OLE
DEVMODEW2A TEXTMETRICW2A

Lihat juga

Macro