`
monkeycn
  • 浏览: 43677 次
  • 性别: Icon_minigender_1
  • 来自: 福州
文章分类
社区版块
存档分类
最新评论

Visual C++ 64 位迁移的常见问题

阅读更多
用 Visual C++ 创建在 64 位 Windows 操作系统中运行的应用程序时,应注意以下问题:

在 64 位 Windows 操作系统中,int 和 long 是 32 位值。对于计划为 64 位平台编译的程序,应注意不要将指针赋给 32 位变量。在 64 位平台上,指针为 64 位,如果将该指针赋给 32 位变量,则应截断该指针值。

在 64 位 Windows 操作系统中,size_t、time_t 和 ptrdiff_t 是 64 位值。

在 32 位 Windows 操作系统上 Visual C++ 2005 之前的 Visual C++ 版本中,time_t 是 32 位值。在 Visual C++ 2005 和更高版本中,默认情况下,time_t 是 64 位整数。有关更多信息,请参见时间管理。

应注意代码在哪里采用 int 值并将其作为 size_t 或 time_t 值处理。数字有可能增长得比 32 位数大,并且数据在被传递回 int 存储时有可能被截断。

%x(十六进制 int 格式)printf 修饰符在 64 位 Windows 操作系统中不会按预期的那样工作。它只对传递给它的值的前 32 位值执行操作。

Windows 32 位操作系统使用 %I32x 显示整数。

Windows 64 位操作系统使用 %I64x 显示整数。

%p(指针的十六进制格式)在 64 位 Windows 操作系统中按预期的那样工作。
分享到:
评论

相关推荐

    Visual C++.net与Visual C++6.0使用之差别

    综上所述,从Visual C++ 6.0迁移到Visual C++.NET的过程中,开发者会遇到许多差异,这些差异不仅体现在文件结构、工作空间布局等方面,还包括配置方案、应用程序向导等方面。尽管存在着一定的学习曲线,但Visual C++...

    Visual C++ Redistributable for Visual Studio 2015 64 32

    《Visual C++ Redistributable for Visual Studio 2015:64位与32位详解》 在软件开发领域,尤其是使用C++语言时,经常会遇到一个关键组件——Visual C++ Redistributable。它是微软Visual Studio开发环境的重要...

    VISUAL C++_NET程序

    《Visual C++ .NET程序设计》是一本专为学习Visual C++ .NET编程的高等院校学生和程序员准备的教材。本书深入浅出地介绍了如何利用Microsoft的.NET Framework进行高效的C++应用开发。.NET Framework为开发者提供了...

    Mastering Visual C++ pdf Micheal J Young

    这一章对于熟悉C语言的开发者来说,是向C++迁移的重要桥梁。 ### 四、C++类定义与封装 第四章深入探讨了C++中的类定义,包括创建类实例、访问类成员以及封装的概念。封装是面向对象编程的核心原则之一,它隐藏了...

    Visual C++ 5.0 特别版_en

    《Visual C++ 5.0 特别版》是一款经典的编程开发工具,它在90年代末期由微软公司发布,是C++开发者的重要利器。这个版本尤其独特,因为它是“特别版”,意味着它可能包含了额外的功能或者优化,使得它在当时对开发者...

    C++AMP用 visual c++加速大规模并行计算源码

    5. **设备选择与数据迁移**:开发者可以选择哪个设备(如CPU或GPU)来执行C++ AMP代码,并将数据在设备之间传输。这可以通过`concurrency::accelerator`类的成员函数来完成。 6. **张量运算**:C++ AMP提供了丰富的...

    《Visual C++数据库开发典型模块与实例精讲》一书的源代码1

    《Visual C++数据库开发典型模块与实例精讲》一书的源代码1涵盖了数据库开发的基础到进阶内容,尤其适合想要深入理解Visual C++与数据库交互的开发者。这本书的源代码分为五个章节,分别是chapter1至chapter5,每个...

    Visual C++MFC 简明教程简明教程

    ### Visual C++ MFC 简明教程精解 #### MFC导论与核心概念 Microsoft基础类库(MFC)是Visual C++的核心组成部分,它不仅是一个编译器,更是一个全面的应用程序开发环境,专为利用C++的面向对象特性而设计,帮助...

    Visual C++6.0技术内幕

    通过学习这些知识点,开发者不仅可以熟练使用Visual C++ 6.0进行软件开发,还能对C++编程有更深入的理解,为后续的升级或迁移至其他版本的Visual Studio打下坚实的基础。尽管Visual C++ 6.0已有些许年代,但其核心...

    Visual C++.net开发手册

    《Visual C++.NET开发手册》是一本专注于使用Microsoft的Visual C++ .NET环境进行软件开发的专业书籍。在C++编程语言的基础上,Visual C++.NET引入了.NET Framework的支持,提供了更强大的开发工具和功能,旨在帮助...

    ustc Visual C++ MFC

    **Visual C++ MFC**是微软提供的一种强大的应用程序开发环境,专用于构建专业级别的Windows应用程序。MFC(Microsoft Foundation Classes)是微软为了简化Windows应用程序开发而设计的一个C++类库,它基于面向对象的...

    Microsoft?Visual?C++?.NET技术内幕_C++_visualc_

    《Microsoft Visual C++.NET技术内幕》是一本深入探讨C++编程在.NET框架下应用的专业书籍。本书主要聚焦于C++/CLI(Managed Extensions for C++)和MFC(Microsoft Foundation Classes)在.NET环境中的运用,旨在...

    Visual C++ 2010 Feature Pack

    在深入探讨Visual C++ 2010 Feature Pack的相关知识点之前,我们首先需要明确这个工具包的基本概念及其重要性。 ### Visual C++ 2010 Feature Pack简介 Visual C++ 2010 Feature Pack是由微软发布的一款针对Visual...

    visual c++

    《Visual C++深入解析》 Visual C++是微软公司开发的一款强大的C++集成开发环境,它结合了编译器、调试器以及丰富的编辑工具,为开发者提供了高效且便捷的编程平台。尤其对于Windows应用程序的开发,Visual C++扮演...

    Visual C++.NET中文版实用培训教程(PDF)

    ### Visual C++.NET中文版实用培训教程:深入理解.NET平台 #### .NET平台概述与核心内容 Microsoft .NET平台标志着软件开发领域的一次重大革新,旨在构建一个支持下一代互联网服务和运营的强大框架。正如《Visual ...

    Visual C++ 2010 集成开发工具使用手册

    - **projname.vcxproj.user(迁移用户文件):**包含从旧版本 Visual Studio 迁移过来的个性化设置信息。 - **projname.idl(接口描述语言文件):**包含控件接口的定义,Visual C++ 使用这些文件生成类型库,供...

    数字图像处理与机器视觉_Visual+C++与Matlab第二版代码

    《数字图像处理与机器视觉:Visual+C++与Matlab实现》是深入研究图像处理和机器视觉领域的经典教材,尤其在第二版中,作者通过结合两种强大的编程语言——Visual C++和Matlab,提供了丰富的实践代码,帮助读者更好地...

Global site tag (gtag.js) - Google Analytics