C语言编译中,什么时候应该使用32位编译程序?
32位编译程序应该在32位操作系统上使用。由32位编译程序生成的32位程序比16位程序运行得更快,这正是任何32位的东西都很热门的原因。
有那么多不同版本的Microsoft Windows,它们和哪种编译程序组成最佳搭配呢?
Windows 3.1和Windows for Workgroups 3.11是16位的操作系统;Microsoft Visual C++1.x是16位编译程序,它所生成的程序能在Windows 3.1上运行。Microsoft Windows NT和Windows 95是32位操作系统;Microsoft Visual C++2.o是32位编译程序,它所生成的32位程序能在这两种操作系统上运行。由Visual C++1.x生成的16位程序不仅能在Windows 3.1上运行,也能在Windows NT和Windows 95上运行。
然而,由Visual 2.O生成的32位程序无法在Windows 3.1上运行。这就给Microsoft提出了一个难题——它希望每个人都使用它的32位编译程序,但是有6千万台计算机所使用的Windows版本无法运行32位程序。为了克服这个障碍,Microsoft设计了一个叫做Win32s的转换库,用来完成由32到16位的转换,从而使由Visual C++生成的32位程序能在
Windows 3.1和Windows for Workgroups上运行。Win32s是专门为在Windows 3.1(和WFW)上运行而设计的,它不能用在Windows NT和Windows 95上,因为它们不需要为运行32位程序作什么转换。有了Win32s,你就可以用Visual C++2.0生成一个既能在Windows 3.1(和WFW)上运行,又能在Windows NT上运行的程序了。
最后还有一个问题,即编译程序本身的问题。Visual C++1.x是一个16位Windows程序,它既能在Windows 3.1上运行并生成16位程序,也能在Windows 95和Windows NT上运行并生成同样的程序。但是,作为一个32位程序,Visual C++2.O无法在Windows 3.1上运行,即使装上了Win32s也无法运行,因为出于方便的目的,Microsoft认为在启动Visual C++2.O之前,你一定运行在Windows 95或Windows NT上。
总而言之,在Windows 3.1,Windows for Workgroups,Windows 95或Windows NT上运行Visual c++1.x(更新的版本为1.51)而生成的16位程序能在任何版本的Windows上运行。由Visual C++2.O生成的32位程序在Windows 95或Windows NT上运行得很快,但它在Windows 3.1(和WFW)下也能很好地运行。
对于Borland C/C++,Borland的Turbo C++3.1版是版本较新的16位编译程序,Borland c++4.5版(注意该名称中没有"Turbo一词)是32位Windows编译程序。这两种编译程序都包含编译程序、Borland的OWL C++类和一个出色的集成化调试程序。
有那么多不同版本的Microsoft Windows,它们和哪种编译程序组成最佳搭配呢?
Windows 3.1和Windows for Workgroups 3.11是16位的操作系统;Microsoft Visual C++1.x是16位编译程序,它所生成的程序能在Windows 3.1上运行。Microsoft Windows NT和Windows 95是32位操作系统;Microsoft Visual C++2.o是32位编译程序,它所生成的32位程序能在这两种操作系统上运行。由Visual C++1.x生成的16位程序不仅能在Windows 3.1上运行,也能在Windows NT和Windows 95上运行。
然而,由Visual 2.O生成的32位程序无法在Windows 3.1上运行。这就给Microsoft提出了一个难题——它希望每个人都使用它的32位编译程序,但是有6千万台计算机所使用的Windows版本无法运行32位程序。为了克服这个障碍,Microsoft设计了一个叫做Win32s的转换库,用来完成由32到16位的转换,从而使由Visual C++生成的32位程序能在
Windows 3.1和Windows for Workgroups上运行。Win32s是专门为在Windows 3.1(和WFW)上运行而设计的,它不能用在Windows NT和Windows 95上,因为它们不需要为运行32位程序作什么转换。有了Win32s,你就可以用Visual C++2.0生成一个既能在Windows 3.1(和WFW)上运行,又能在Windows NT上运行的程序了。
最后还有一个问题,即编译程序本身的问题。Visual C++1.x是一个16位Windows程序,它既能在Windows 3.1上运行并生成16位程序,也能在Windows 95和Windows NT上运行并生成同样的程序。但是,作为一个32位程序,Visual C++2.O无法在Windows 3.1上运行,即使装上了Win32s也无法运行,因为出于方便的目的,Microsoft认为在启动Visual C++2.O之前,你一定运行在Windows 95或Windows NT上。
总而言之,在Windows 3.1,Windows for Workgroups,Windows 95或Windows NT上运行Visual c++1.x(更新的版本为1.51)而生成的16位程序能在任何版本的Windows上运行。由Visual C++2.O生成的32位程序在Windows 95或Windows NT上运行得很快,但它在Windows 3.1(和WFW)下也能很好地运行。
对于Borland C/C++,Borland的Turbo C++3.1版是版本较新的16位编译程序,Borland c++4.5版(注意该名称中没有"Turbo一词)是32位Windows编译程序。这两种编译程序都包含编译程序、Borland的OWL C++类和一个出色的集成化调试程序。