C++知识点

时间:2023-03-09 03:06:22
C++知识点

typedef

typedef struct _COMSTAT {
    DWORD fCtsHold : ;      //机构内位域的定义即变量fCtsHold占1个bit空间
    DWORD fDsrHold : ;
    DWORD fRlsdHold : ;
    DWORD fXoffHold : ;
    DWORD fXoffSent : ;
    DWORD fEof : ;
    DWORD fTxim : ;
    DWORD fReserved : ;
    DWORD cbInQue;
    DWORD cbOutQue;
} COMSTAT, *LPCOMSTAT;

//typedef
//1:定义一种类型的别名
typedef char* PCHAR; // 一般用大写
PCHAR pa, pb; // 可行,同时声明了两个指向字符变量的指针
//注意下面
char* pa, pb; // 它只声明了一个指向字符变量的指针和一个字符变量

//2.定义结构体类型的别名,声明时直接:结构名 对象名即可

//3.用typedef来定义与平台无关的类型,方便转平台时修改代码

//4.为复杂的声明定义一个新的简单的别名
typedef void (*LPDataArriveProc)(char *data,int length,DWORD userdata);
//定义了LPDataArriveProc是一个指针为指向返回值为void,变量为(char *data,int length,DWORD userdata)的一个函数

char和CString互转

//CString 转 char///////////////////////////////////////
CString theString =_T("char");
LPTSTR lpsz = ];
_tcscpy(lpsz, theString);

//char 转 CString///////////////////////////////////////
char chArray[] = "char";
CString strx =CString(chArray).Left(sizeof(chArray));
SetDlgItemText(IDC_EDIT_ScanCode,strx);