📄 subject_24889.htm
字号:
<p>
序号:24889 发表者:网络猎人 发表日期:2002-12-17 14:38:53
<br>主题:请问各位,HIWORD和LOWORD和MAKELONG这几个函数怎么用?
<br>内容:请问各位,HIWORD和LOWORD和MAKELONG这几个函数怎么用?
<br><a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p>
<hr size=1>
<blockquote><p>
回复者:xiongli 回复日期:2002-12-17 15:06:51
<br>内容:DWORD K;<BR>WORD P=HIWORD(K);<BR>WORD Q=LOWORD(K);<BR>DWORD J=MAKELONG(P,Q);
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:xiongli 回复日期:2002-12-17 15:20:33
<br>内容:还说一点<BR>这三个东西不是function而是macro<BR>ok?
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:网络猎人 回复日期:2002-12-17 15:20:59
<br>内容:谢谢xiongli的回答,DWORD低字节保存的是什么,高字节保存的是什么<BR>你可以用一个例子来说明吗?
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
<font color=red>答案被接受</font><br>回复者:xiongli 回复日期:2002-12-17 22:13:51
<br>内容:dword 就是double word就是双字长,就是32位<BR>word就是16位<BR>在vc里面,double word=unsigned long<BR>work=unsigned short<BR>你说一个long,一个short用来保存什么??你想保存什么就保存什么<BR>不过在windows里面有一些约定,比如在处理消息的时候,系统会传递进来一个32位长度的参数,这是他的高16低16分别保存了不同的信息,你需要自己把它们分开<BR>明白了??
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:网络猎人 回复日期:2002-12-18 12:13:09
<br>内容:谢谢!
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:网络猎人 回复日期:2002-12-18 12:21:42
<br>内容:你再帮我看回下面的片段,为什么要用到上面讲的三个宏? <BR> SWORD wColumnCount; // <BR> UWORD wColumnIndex = 0; // <BR> SWORD wColumnType; // <BR> UDWORD dwPrecision; // <BR> SWORD wScale; // <BR> SWORD wNullable; // <BR><BR> void* pVoid; // <BR><BR> m_retcode = ::SQLNumResultCols( m_hstmt, &wColumnCount );<BR> if( m_retcode != SQL_SUCCESS )<BR> {<BR> m_pODBCDatabase->DisplayODBCError( m_hstmt );//<BR> return FALSE;<BR> }<BR><BR> while( m_uFieldCount < (UINT)wColumnCount )//m_uFieldCount=0;<BR> {<BR> m_uFieldCount++;<BR> wColumnIndex = m_uFieldCount;<BR> m_retcode = ::SQLDescribeCol( m_hstmt, <BR> wColumnIndex, // Index for column that we want inforamtion about<BR> NULL, 0, NULL, // We don't want columnname<BR> &wColumnType, // columntype<BR> &dwPrecision, // <BR> &wScale,<BR> &wNullable );<BR> if( m_retcode != SQL_SUCCESS )<BR> {<BR> m_pODBCDatabase->DisplayODBCError( m_hstmt );<BR> return FALSE;<BR> }<BR><BR> switch( wColumnType ) <BR> {<BR> case SQL_CHAR :<BR> case SQL_VARCHAR :<BR> dwPrecision++;<BR> pVoid = new char[dwPrecision];<BR> wColumnType = SQL_CHAR;<BR> break;<BR> case SQL_INTEGER :<BR> pVoid = new long;<BR> break;<BR> case SQL_SMALLINT :<BR> pVoid = new short;<BR> break;<BR> case SQL_DOUBLE :<BR> pVoid = new double;<BR> break;<BR> case SQL_NUMERIC :<BR> case SQL_DECIMAL :<BR> dwPrecision += 3;<BR> pVoid = new char[dwPrecision];<BR> break;<BR> default:<BR> pVoid = NULL;<BR> }// endswitch<BR> m_ptrarrayFieldValue.Add( pVoid ); //m_ptrarrayFieldValue是指针数组<BR> m_dwarrayColumnType.Add( MAKELONG( wColumnType, (WORD)dwPrecision ) );<BR> }
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -