создал дефайны вида
#define STR1 TEXT("String 1")
#define STR2 TEXT("String 2")
передаю их в функцию которая принимает LPCSTR !!!
lpText = (LPSTR)GetStr(STR1, FALSE);
PVOID GetStr(LPSTR lpStr, BOOL bStatus)
код функции большой поэтому кидат не буду
но в процессе исполнения уже даже после трех строк кода студия пишет внизу в окошке что переменные:
lpcStr равна 0x00000000 (почему адрес обнулился) далее по коду там написанно 0x6C2C200F <Error reading characters of string>
bStatus равна 7558848 (?это что такое)
то адресc меняется то переменная мусором забивается короче немогу получить к ней доступ
мне нужно проверить если она такаяже как я передал я проыверяю так:
if (StrNCmp(lpStr, STR1, lstrlen(STR1)) == NULL && bStatus != FALSE)
{
}
и оно всегда незаходит в
IF
важно что я хочу использовать именно
LPSTR BOOL PVOID и по возможности работать с
#define
вместо char char* bool void*
вот код из либ студии
//
// ANSI (Multi-byte Character) types
//
typedef CHAR *PCHAR, *LPCH, *PCH;
typedef CONST CHAR *LPCCH, *PCCH;
typedef _Null_terminated_ CHAR *NPSTR, *LPSTR, *PSTR;
typedef _Null_terminated_ PSTR *PZPSTR;
typedef _Null_terminated_ CONST PSTR *PCZPSTR;
typedef _Null_terminated_ CONST CHAR *LPCSTR, *PCSTR;
typedef _Null_terminated_ PCSTR *PZPCSTR;
typedef _Null_terminated_ CONST PCSTR *PCZPCSTR;
typedef _NullNull_terminated_ CHAR *PZZSTR;
typedef _NullNull_terminated_ CONST CHAR *PCZZSTR;
typedef CHAR *PNZCH;
typedef CONST CHAR *PCNZCH;