Windows核心编程第03天 文本输出
1.TextOut函数,使用当前选择的字体、背景颜色和文本颜色,将一个字符串绘制于窗口的指定位置。
BOOL TextOut( _In_ HDC hdc, //设备环境句柄 _In_ int nXStart, //定用于字符串对齐的基准点的逻辑 x 坐标 _In_ int nYStart, //指定用于字符串对齐的基准点的逻辑 y 坐标 _In_ LPCTSTR lpString, //指向将被绘制字符串的指针,该字符串不必以'\0'结束,因为 cchString 参数指定了该字符串的长度 _In_ int cchString //lpString字符串的长度(有多少个字符) );
2.StringCchPrintf 函数用于把数据格式化写入到指定的缓冲区里,该函数要求提供目标缓冲区的大小,确保不会发生越界访问。
HRESULT StringCchPrintf(
_Out_ LPTSTR pszDest, //指定格式化数据将要写入的缓冲区
_In_ size_t cchDest, //缓冲区大小
_In_ LPCTSTR pszFormat, //格式化字符串,与 pirntf 的格式化字符串一致
_In_ ... //可变参数,参数的个数取决 pszFormat 参数
);
3.StringCchLength 函数用于确定字符串是否超过了规定的长度,以字符为计算单位。
HRESULT StringCchLength( _In_ LPCTSTR psz, //指向待检查的字符串 _In_ size_t cchMax, //psz 参数里最大允许的字符数量,包括'\0' _Out_ size_t *pcch //psz 参数指向字符串的字符个数,不包括'\0' );
4.StringCchCat 函数的功能是将一个字符串拼接到另一个字符串。StringCchCat 函数要求提供目标缓冲区的长度,以确保写入数据不会超出缓冲区的末尾。
HRESULT StringCchCat(
_Inout_ LPTSTR pszDest, //目标缓冲区,同时包含第一个字符串
_In_ size_t cchDest, // 目标缓冲区的大小(字符个数)
_In_ LPCTSTR pszSrc //第二个字符串
);
5.StringCchCopy 函数的功能是复制一个字符串到缓冲区。StringCchCopy 函数要求提供目标缓冲区的长度,以确保写入数据不会超出缓冲区的末尾
HRESULT StringCchCopy(
_Out_ LPTSTR pszDest, //缓冲区,用于接收拷贝过来的字符串
_In_ size_t cchDest, //目标缓冲区的大小(字符个数)
_In_ LPCTSTR pszSrc //待拷贝的字符串
);