64位平台C/C++容易犯的错误】的更多相关文章

 64位平台的介绍 IA-64 is a 64-bit microprocessor architecture developed by Intel and Hewlett Packard companies together. It is implemented in Itanium and Itanium 2 microprocessors. To learn more about the architecture IA-64 see the following Wikipedia arti…
在32位平台上运行SWMM模型,当节点数量到达60万以上的时候,模型运行占用内存接近1.85G的时候就会因为内存不够而无法计算.这种情况还是单独运行SWMM.exe的时候出现,如果采用SWMM.DLL的方式来计算的话,加载DLL的主程序还需要占用一定的内存,那么留给模型的内存就更少了.出现这个问题的根本原因还是由于32位系统单个进程4G内存的限制导致的.想解决大量节点的计算问题就需要考虑将模型移植到64位平台. 目前EPA发布的最新的SWMM代码是5.0.022版本.移植就采用该版本. 在VS2…
转自http://coolshell.cn/articles/3512.html 在http://www.viva64.com/en/l/上例出了28个在64位平台上使用C/C++开发的注意事项,对于进入64位时代的程序员应该去看看这28个事项, 相信对大家一点有帮助. Lesson 01. What 64-bit systems are. Lesson 02. Support of 32-bit applications. Lesson 03. Porting code to 64-bit s…
64位平台支持大于2 GB大小的数组 64位平台.NET Framework数组限制不能超过2GB大小.这种限制对于需要使用到大型矩阵和向量计算的工作人员来说,是一个非常大问题. 无论RAM容量有多大有多少,一旦你使用大型矩阵和向量计算工作的时候,经常会抛出一个System.OutOfMemoryException异常,如下图所示: 参考程序 class Program { private static void Main(string[] args) { int arrysize = 1500…
在http://www.viva64.com/en/l/上例出了28个在64位平台上使用C/C++开发的注意事项,对于进入64位时代的程序员应该去看看这28个事项,这些英文读物对于有C/C++功底的朋友读起来应该并不难,我估计大约20-30分钟可以精读完一篇(或者更快),下面是这28个注意事项的列表.相信对大家一点有帮助. Lesson 01. What 64-bit systems are. Lesson 02. Support of 32-bit applications. Lesson 0…
64位平台.NET Framework数组限制不能超过2GB大小.这种限制对于需要使用到大型矩阵和向量计算的工作人员来说,是一个非常大问题. 无论RAM容量有多大有多少,一旦你使用大型矩阵和向量计算工作的时候,经常会抛出一个System.OutOfMemoryException异常,如下图所示: 参考程序 class Program { private static void Main(string[] args) { ; var large=new decimal[arrysize]; Con…
本文网页排版有些差,已上传了doc,可以下载阅读.本文中的所有代码已打包,下载地址在此. -------------------------------------------------------------------------------------------------------------------------------------------------------------- 手写一个调试器有助于我们理解hook.进程注入等底层黑客技术具体实现,在编写过程中需要涉及大…
win7 64位平台编译的程序在XP 32位平台无法运行的解决方法 vs2010的开发环境,制作了一个DLL库.但DLL在XP 32位平台一直无法使用.解决方法如下: 右键项目,属性->配置属性->常规->MFC的使用,选择“在静态库中使用MFC”. 重新生成.解决.…
怎么查看Python的版本号?使用的Python是32位还是64位的?用以下两条Python 指令就可以知道. 方法1:通过Python代码查看 import platform import sys print(platform.architecture()) #查看是32/64位 print(sys.version) #查看版本号 在两台电脑上的执行结果分别为: A电脑: ('32bit', 'WindowsPE')3.6.5 (v3.6.5:f59c0932b4, Mar 28 2018,…
1.src/common/public.h uint32_t lpParameter 改为 void* lpParameter; 2.SocksMgr.cpp DWORD WINAPI CSocksMgr::ForwardProc(void* lpParameter) { // int s = int (lpParameter); ... } 编译不过去.因为在 64位平台下,void*向 int转换会丢失精度. DWORD WINAPI CSocksMgr::ForwardProc(void*…
刚接触Android移动开发,第一次下载Titanium,第一次下载ADT,第一次看Javascript代码,N多第一次...... 慢慢摸索了一个礼拜把移动开发的工具链的配置学习了一下,抛砖引玉,但愿大家别再浪费时间于工具链的搭建工作,如有写错万望指正. 网络 直接连google的repository一直不太稳定,大家还是搞个VPN或者PPTP. 安装ADT (Android Developer Tools) Bundle http://developer.android.com/sdk/in…
解决方案:VS2010在经历一些更新后,建立Win32 Console Project时会出“error LNK1123” 错误,解决方案为将 项目|项目属性|配置属性|清单工具|输入和输出|嵌入清单 “是”改为“否”即可,但是没新建一个项目都要这样设置一次. 在建立VS2010 Win32 Project项目时,按照上面解决方案依然发生了“error LNK1123”错误,经过上网查资料,解决方案为: 第一步:与上相同. 第二步:将 项目|项目属性|配置属性|连接器|清单文件|嵌入清单 “是”…
用管理员身份运行CMD,输入netsh winsock reset并回车(注意,必须是已管理员身份运行,这个重置LSP连接)…
2013年07月10日 14:47:27 阅读数:1239 错误: /usr/include/gnu/stubs.h:7:27: error: gnu/stubs-32.h: No such file or directory make: *** [out/host/linux-x86/obj/EXECUTABLES/acp_intermediates/acp.o] 错误 1 解决: sudo apt-get install libc6-dev-i386 错误: make: *** [out/h…
今天装备安装Oracle12C体验一下,结果遇到问题:请确保当前用户具有访问临时位置所需的权限,无法继续安装,上网查了一下,解决方案如下:  第一步:  控制面板>所有控制面板项>管理工具>服务>SERVER 启动  第二步:  控制面板>所有控制面板项>管理工具>计算机管理>系统工具>共享文件夹>共享  右键单击"共享">新建共享>  点击"下一步">  单击"浏览"…
最近在使用Noesis.Javascript.dll,但是这个DLL是有X86与X64二种版本的,我自己的电脑是64位的,但是别人的电脑是32位的.所以在别人那里使用的时候出了问题. 在VS里怎么引用二个版本的DLL了.在网上搜索了资料.我修改的对应代码如下:(资料在后面,自己可以看) <Reference Condition=" '$(Platform)' == 'AnyCPU' " Include="Noesis.Javascript, Version=0.0.0.…
安卓5.0宣告了ARM平台全面进入64位时代 2014年10月份,安卓5.0正式版发布了,安卓5.0支持64位CPU,安卓5.0全面启用ART运行模式,在程序安装的时候,进行预编译,新的运行环境能够使大多数应用的执行时间减半.这意味着,CPU 消耗大.运行时间长的应用能够更加快速地完成,而一般的应用也能更加流畅,比如动画效果更顺畅,触控反馈更加即时. 和电脑从32位平台进入64位平台类似,也会出现两个平台交替带来的阵痛,部分应用程序会出现不兼容的情况比如在安卓4.x平台下运行的程序,在安卓5.x…
发生在一周前的事情了,当时想感受下 MySQL C API ,就写了几个小例子.虽然是在 Windows(我的工作电脑是 64位 Windows) 上面,但是不想用 VS ,只想用文本软件写好代码后用 cl 编译,然后用 link 链接.就在我写完最简单的一个例子后,死活都编译不过去.代码如下: #include <my_global.h> #include <mysql.h> int main(int argc, char **argv) { printf("MySQL…
在strconv包中有个常量 const intSize  =  32  <<  (  ^uint(0)  >>  63  ) const IntSize = intSize 在32位平台这个值为32;在64位平台,这个值为64; 因此可以通过这个来判断平台的位数. 原理: 在32平台系统: 1. uint(0)在平台底层是0x00000000 2. ^uint(0)在平台底层是0xFFFFFFFF 3. ^uint(0) >> 63 在底层平台是0x00000000,…
64位的Ubuntu系统上使用汇编nasm和C语言 $ nasm -f elf foo.asm -o foo.o$ gcc -c bar.c -o bar.o$ ld -s  foo.o bar.o -o foobar ld: i386 architecture of input file `foo.o' is incompatible with i386:x86-64 output 意思是nasm 编译产生的是32位的目标代码,gcc 在64位平台上默认产生的是64位的目标代码, 这两者在链接…
 ubuntu 到底是选择32位还是64位? 2011-06-03 15:16:31 标签:ubuntu linux 休闲 cpu 职场 原文出处:官方wiki原文作者:授权许可: 创作共用协议Attribution-ShareAlike 2.0 GNU自由文档许可证 翻译人员:drivel MailTo(drivel AT gmail DOT com) 校正人员:Murodoch 贡献人员: 适用版本:全部 绝大多数2005年之后的计算机是64位的,如果你有一台支持4GB内存的机器,那么你就不…
win7或win8 64位下调试程序,出现这样的错误提示:未在本地计算机上注册 Microsoft.Jet.OLEDB.4.0 提供程序 解决方法如下: 方法一:“设置应用程序池默认属性”/“常规”/”启用32位应用程序”,设置为 true. 如下图所示: 方法二:生成->配置管理器->平台->点击Any Cpu选项卡->新建->新建平台->X86.…
32bit-64bit porting work注意事项 64位服务器逐步普及,各条产品线对64位升级的需求也不断加大.在本文中,主要讨论向64位平台移植现有32位代码时,应注意的一些细小问题. 什么样的程序需要升级到64位? 理论上说,64位的操作系统,对32位的程序具有良好的兼容性,即使全部换成64位平台,依然可以良好的运行32位的程序.因此,许多目前在32位平台上运行良好的程序也许不必移植,有选择,有甄别的进行模块的升级,对我们工作的展开,是有帮助的. 什么样的程序需要升级到64位呢? 除…
Python 2.7.12 下载地址:https://www.python.org/downloads/release/python-2712/ 安装路径D:\Program Files\Python27 python环境安装比较简单,下载python语言环境中的windows版本的msi格式文件,下载后双击安装即可. 在安装时选择添加路径到系统中,则环境变量Path中已经自动添加python安装的路径D:\Program Files\Python27 运行cmd,在命令行中测试一下 如上图中所…
from : http://goooder.bokee.com/2000373.html (雷立辉 整理) 简介:本文对如何将32位Windows程序平滑的支持和过渡到64位Windows操作系统做出了一个简单而系统的介绍.包括对于64位操作系统的版本,编程模型,一些移植原则甚至包括对驱动程序的移植原则的介绍. 作者介绍:系统分析员,现在在北京工作.作者的blog:http://goooder.blogchina.com. 前言: 或许大家还对32位的CPU及操作系统使用还是觉得非常的合乎日常需…
一)64位系统和32位有什么区别? 1.64bit CPU拥有更大的寻址能力,最大支持到16GB内存,而32bit只支持4G内存 2.64位CPU一次可提取64位数据,比32位提高了一倍,理论上性能会提升1倍.但这是建立在64bit操作系统,64bit软件的基础上的. 什么是64位处理器? 之所以叫做“64位处理器”,是因为电脑内部都是实行2进制运算,处理器(CPU)一次处理数据的能力也是2的倍数.8位处理器.16位处理器. 32位处理器和64位处理器,其计数都是2的倍数.一次处理的数据越大,该…
近期可能会有一个64位平台的驱动开发任务,找了些资料,对64位平台下的驱动开发略知一二了,好神奇. 一.在64位系统下,有一项PatchGuard技术,它是微软为了防止自己的代码被Patch,进而影响系统的稳定性引入的,这项技术会检查以下内容有没有被恶意修改过: 1- SSDT (System Service Descriptor Table) 2- GDT (Global Descriptor Table) 3- IDT (Interrupt Descriptor Table) 4- Syst…
原文网址:http://www.cnblogs.com/kex1n/archive/2010/10/06/1844737.html 一.数据类型特别是int相关的类型在不同位数机器的平台下长度不同.C99标准并不规定具体数据类型的长度大小,只规定级别.作下比较: 16位平台 char         1个字节8位 short        2个字节16位 int            2个字节16位 long         4个字节32位 指针         2个字节 32位平台 char …
原文网址:http://www.ibm.com/developerworks/cn/linux/l-port64.html 随着 64 位体系结构的普及,针对 64 位系统准备好您的 Linux® 软件已经变得比以前更为重要.在本文中,您将学习如何在进行语句声明.赋值.位移.类型转换.字符串格式化以及更多操作时,防止出现可移植性缺陷. 0 评论: Harsha S. Adiga, 软件工程师, IBM 2006 年 5 月 18 日 内容 在 IBM Bluemix 云平台上开发并部署您的下一个…
在Windows 7(32位)用.Net开发的Excel导入数据表功能,测试后一切正常,站点发布挪到Windows Server 2008(64位)上就意外了,出现错误提示,运行程序,抛出异常:未在本地计算机上注册 Microsoft.Jet.OLEDB.4.0 提供程序,搞了老半天,不知道什么原因,后来搜过了一下,才发现解决问题的办法是如此简单: 解决方法之一: 编译项目指定目标平台为x86就完了,不能用any cpu 生成->配置管理器->平台->点击Any Cpu选项卡->新…