⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 chap2_3.htm

📁 着重介绍基于C++的web编程技术
💻 HTM
📖 第 1 页 / 共 3 页
字号:
        <td WIDTH="30%"><font FACE="Times New Roman" SIZE="3">f</font></td>
        <td WIDTH="70%"><font FACE="Times New Roman" SIZE="3">BOOL</font></td>
      </tr>
      <tr>
        <td WIDTH="30%"><font FACE="Times New Roman" SIZE="3">w</font></td>
        <td WIDTH="70%"><font SIZE="3">字</font><font FACE="Times New Roman" SIZE="3">(WORD</font><font SIZE="3">,无符号短整数</font><font FACE="Times New Roman" SIZE="3">)</font></td>
      </tr>
      <tr>
        <td WIDTH="30%"><font FACE="Times New Roman" SIZE="3">l</font></td>
        <td WIDTH="70%"><font SIZE="3">长整数</font><font FACE="Times New Roman" SIZE="3">(long)</font></td>
      </tr>
      <tr>
        <td WIDTH="30%"><font FACE="Times New Roman" SIZE="3">h</font></td>
        <td WIDTH="70%"><font FACE="Times New Roman" SIZE="3">HANDLE</font><font SIZE="3">(无符号</font><font FACE="Times New Roman" SIZE="3">int</font><font SIZE="3">)</font></td>
      </tr>
      <tr>
        <td WIDTH="30%"><font FACE="Times New Roman" SIZE="3">m_</font></td>
        <td WIDTH="70%"><font SIZE="3">类成员变量</font></td>
      </tr>
      <tr>
        <td WIDTH="30%"><font FACE="Times New Roman" SIZE="3">fn</font></td>
        <td WIDTH="70%"><font SIZE="3">函数</font><font FACE="Times New Roman" SIZE="3">(function)</font></td>
      </tr>
      <tr>
        <td WIDTH="30%"><font FACE="Times New Roman" SIZE="3">dw</font></td>
        <td WIDTH="70%"><font SIZE="3">双字</font><font FACE="Times New Roman" SIZE="3">(DWORD</font><font SIZE="3">,无符号长整数</font><font FACE="Times New Roman" SIZE="3">)</font></td>
      </tr>
    </table>
    <p><font SIZE="3"> </font><font FACE="Times New Roman" SIZE="3"></p>
    <p>2.</font><font SIZE="3">在标识符内,前缀以后就是一个或者多个第一个字母大写的单词,这些单词清楚地指出了源代码内那个对象的用途。比如,</font><font FACE="Times New Roman" SIZE="3">m_szStudentName</font><font SIZE="3">表示一个学生名字的类成员变量,数据类型是字符串型。<b></p>
    <p>从</font><font FACE="Times New Roman" SIZE="3">16</font><font SIZE="3">位的</font><font FACE="Times New Roman" SIZE="3">Win16 API</font><font SIZE="3">迁移到</font><font FACE="Times New Roman" SIZE="3">Win32 API</font><font SIZE="3">注意点</font></b><font FACE="Times New Roman" SIZE="3"></p>
    <p></font><font SIZE="3"> </font><font FACE="Times New Roman" SIZE="3"></p>
    <p>1.</font><font SIZE="3">数据类型字长的变化:</font><font FACE="Times New Roman" SIZE="3"></p>
    <p></font><font SIZE="3">我们编写一个小程序来说明</font><font FACE="Times New Roman" SIZE="3">Win32</font><font SIZE="3">下的常见数据类型的字长:</font><font FACE="Times New Roman" SIZE="3"></p>
    <p>#include&lt;windows.h&gt;</p>
    <p>#include&lt;stdio.h&gt;</p>
    <p>void main(void)</p>
    <p>{</p>
    <p>printf(&quot;sizeof(int) is %d\n&quot;,sizeof(int));</p>
    <p>printf(&quot;sizeof(BYTE) is %d\n&quot;,sizeof(BYTE));</p>
    <p>printf(&quot;sizeof(WORD) is %d\n&quot;,sizeof(WORD));</p>
    <p>printf(&quot;sizeof(DWORD) is %d\n&quot;,sizeof(DWORD));</p>
    <p>printf(&quot;sizeof(LONG) is %d\n&quot;,sizeof(LONG));</p>
    <p>printf(&quot;sizeof(PVOID) is %d\n&quot;,sizeof(PVOID));</p>
    <p>printf(&quot;sizeof(LPVOID) is %d\n&quot;,sizeof(LPVOID));</p>
    <p>}</p>
    <p></font><font SIZE="3">使用</font><font FACE="Times New Roman" SIZE="3">Visual C++</font><font SIZE="3">编译运行该程序,输出结果如下:</font><font FACE="Times New Roman" SIZE="3"></p>
    <p>sizeof(int) is 4</p>
    <p>sizeof(BYTE) is 1</p>
    <p>sizeof(WORD) is 2</p>
    <p>sizeof(DWORD) is 4</p>
    <p>sizeof(LONG) is 4</p>
    <p>sizeof(PVOID) is 4</p>
    <p>sizeof(LPVOID) is 4</p>
    <p ALIGN="JUSTIFY"></font><font SIZE="3">从上面的输出结果我们看到:整数类型字长已经同长整数相同,</font><font FACE="Times New Roman" SIZE="3">PVOID</font><font SIZE="3">近指针和</font><font FACE="Times New Roman" SIZE="3">LPVOID</font><font SIZE="3">远指针长度也相同。在编程过程中,我们要注意这些变化,凡是设计字长的问题最好还是采用可以移植的</font><font FACE="Times New Roman" SIZE="3">sizeof</font><font SIZE="3">操作符来做。</font><font FACE="Times New Roman" SIZE="3"></p>
    <p>2.</font><font SIZE="3">内存模式变化:</font><font FACE="Times New Roman" SIZE="3"></p>
    <p></font><font SIZE="3">在</font><font FACE="Times New Roman" SIZE="3">Win32</font><font SIZE="3">平台下,不再有微模式、紧凑模式、中模式、大模式、巨模式、自定义内存模式之分,也不再有</font><font FACE="Times New Roman" SIZE="3">64KB</font><font SIZE="3">代码段和数据段的限制。只有一种内存模式,</font><font FACE="Times New Roman" SIZE="3">Win32</font><font SIZE="3">下的地址和代码均在线性寻址的</font><font FACE="Times New Roman" SIZE="3">2GB</font><font SIZE="3">的</font><font FACE="Times New Roman" SIZE="3">32</font><font SIZE="3">位内存空间中。当然,编程时还是要考虑到实际内存限制的。</font><font FACE="Times New Roman" SIZE="3"></p>
    <p>3.</font><font SIZE="3">类型修饰符:</font><font FACE="Times New Roman" SIZE="3"></p>
    <p></font><font SIZE="3">在</font><font FACE="Times New Roman" SIZE="3">Win32</font><font SIZE="3">下,不再有远指针、近指针、巨型指针之分,三种指针类型完全相同。</font><font FACE="Times New Roman" SIZE="3">32</font><font SIZE="3">位的编译器会忽略所有的</font><font FACE="Times New Roman" SIZE="3">_near</font><font SIZE="3">、</font><font FACE="Times New Roman" SIZE="3">_far</font><font SIZE="3">、</font><font FACE="Times New Roman" SIZE="3">_huge</font><font SIZE="3">关键字并一视同仁来处理。在</font><font FACE="Times New Roman" SIZE="3">Win32</font><font SIZE="3">中,象</font><font FACE="Times New Roman" SIZE="3">LPSTR</font><font SIZE="3">和</font><font FACE="Times New Roman" SIZE="3">PSTR</font><font SIZE="3">这种类型是等价的。</font><font FACE="Times New Roman" SIZE="3"></p>
    <p>4.</font><font SIZE="3">函数的变化:</font><font FACE="Times New Roman" SIZE="3"></p>
    <p>Win32API</font><font SIZE="3">设计时尽可能保证与</font><font FACE="Times New Roman" SIZE="3">Win16API</font><font SIZE="3">兼容,但是仍然对一些函数作了修改。比如在</font><font FACE="Times New Roman" SIZE="3">Win16</font><font SIZE="3">下的</font><font FACE="Times New Roman" SIZE="3">MoveTo</font><font SIZE="3">在</font><font FACE="Times New Roman" SIZE="3">Win32</font><font SIZE="3">下为</font><font FACE="Times New Roman" SIZE="3">MoveToEx</font><font SIZE="3">。如果在编译程序时某个</font><font FACE="Times New Roman" SIZE="3">API</font><font SIZE="3">函数没找到,试着在这个函数名后面加上</font><font FACE="Times New Roman" SIZE="3">Ex</font><font SIZE="3">,</font><font FACE="Times New Roman" SIZE="3">Ex</font><font SIZE="3">表示它是</font><font FACE="Times New Roman" SIZE="3">Win16</font><font SIZE="3">的扩展。 </font><font FACE="Times New Roman" SIZE="3"></p>
    </font><div align="center"><center><table border="0" cellpadding="0" cellspacing="0" width="615">
      <tr>
        <td><a href="chap2_2.htm">上一页</a></td>
        <td><p align="right"><a href="chap2_4.htm">下一页</a></td>
      </tr>
    </table>
    </center></div><font SIZE="5"><hr noshade color="#3973DE" size="1">
    <p align="center"></font><font size="2" color="#000000">本教程由<a href="http://vcdynasty.yeah.net">Visual C++王朝(Where programmers come together)</a>协助制作<br>
    未经许可,请勿以任何形式复制</font></td>
    <b>
  </tr>
</table>
</center></div>

<p ALIGN="CENTER"></b><font SIZE="5"> </font><font FACE="Times New Roman" SIZE="5"></p>
</font><font FACE="Times New Roman" SIZE="3">

<p></font><b><font SIZE="3"> </font><font FACE="Times New Roman" SIZE="3"></p>
</font></b>

<p><font SIZE="3"> </font><font FACE="Times New Roman" SIZE="3"></p>

<p></font> </p>
</body>
</html>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -