当前位置:首页 » 编程软件 » c程序编译是32位还是64位

c程序编译是32位还是64位

发布时间: 2022-02-11 23:29:22

A. c语言只能编写出16位的程序而不能编写32位或64位的吗

不是啊,可以编写32位或64位的。如:DEV_C++

还有,C语言能编写16位程序吗?(本人在做DOS开发,求C/C++做16位程序)

B. 在c语言中,Int是32位整数还是64位整数,那么在tc中到底是多少位啊

一般来说INT整型是双字节也就是16位整数,不过具体还要看运行的系统,而在64位的系统中,INT是4字节整数,也就是32位整数,在通用的系统中,还没有64位整数,在大型机中,是64位以上整数

C. C语言 怎么区分当前系统是32位还是64位

经过对include的翻查,最后确定gcc以__i386__来进行32位编码,而以__x86_64__来进行64位编码;64位的gentoo下stdio.h就是个简单例子(i不晓得其它的是不是?);而且在bits/wordsize.h中对这两个定义进行了综合,以__WORDSIZE的值来表示机器类型,大家可以直接去看看

例子

#include <stdio.h>

int main(int argc ,char* argv)

{

#ifdef __x86_64__

printf("__x86_64__");

#elif __i386__

printf("__i386__");

#endif

return 0;

}

D. 程序编译64位和32位的区别是什么

32位和64位的区别就是一次性的运算量不一样,理论上64位的会比32位快1倍,内存寻址也不一样,但是这些对于我们这些普通用户意义不大,对于现阶段来说32位会更适合我们使用。 重装系统可以选择 雨林木风U盘启动盘制作工具 来自动安装系统,网络一下就可以进他们的官网查看图文教程。

E. 64位操作系统电脑能装C语言程序设计编译器吗64位的比32的好吗

现在的64位机不是和32位都兼容的吗,所以可以使用的。就连我现在使用64位系统,用visual studio,平时都是用的32位模式的,要编译64位模式的都需要专门在编译器选项里面进行修改。而且修改之后,只是输出64位程序,那个编译器自己也还是32位的。
以后慢慢的肯定会有很多64位的编译器出现,毕竟当程序都针对64位系统编写的时候,软件执行速度肯定会有所提高的,特别是数值运算类的,符号处理类的,多媒体的都会有所提高。而编译器显然是符号处理类的。

F. C获取系统是32位还是64位

因为想(int *)或者sizeof(int)都是由编译器处理的东西,它们的长度由编译器确定,并不受目标系统的影响。编译器屏蔽了硬件细节。应用层看不出什么内容,从OS内部或者驱动去获取详我是这麼写的,想法是将-1存入某个寄存器,然后对寄存器做移位操作,直到为0,记录操作步数。后来发现eax总是32位的,无论是32位CPU还是64位CPU。对彙编不太熟悉,应该可以找到这样一个寄存器。#include <stdio.h> int main(int argc,char **argv) { int i=0; double a=0; __asm { mov eax,-1; start: cmp eax,0; je end; shl eax,1; mov ecx,i; inc ecx; mov i,ecx; jmp start; end: } printf("%d\n",i); return 0; }为了代码兼容,EAX都是32位的,64位的是RAX,当然你如果在32位系统里用了带RAX的指令,执行时肯定有非法指令错误。

G. 用C语言编的程序是16位的还是32位的

应该是是32位的,因为如果在VC++上编译C语言的时候首先建立一个win32 consol application,我觉着应该就是32位的了。呵呵^^

H. 编译器64位和32位有什么区别

从 32位到 64位架构的改变是一个根本的改变,因为大多数操作系统必须进行全面性修改,以取得新架构的优点。其它软件也必须进行移植,以使用新的性能;较旧的软件一般可借由硬件兼容模式(新的处理器支持较旧的 32位版本指令集)或软件模拟进行支持。或者直接在 64位处理器里面实现 32位处理器核心(如同 Intel 的 Itanium 处理器,其内含有 x86 处理器核心,用来运行 32位 x86 应用程序)。支持 64位架构的操作系统,一般同时支持 32位和 64位的应用程序。
明显的例外是 AS/400,其软件运行在虚拟的指令集架构,称为 TIMI(技术独立机器界面),它会在运行之前,以低级软件转换成原生机器码。低级软件必须全部重写,以搬移整个 OS 以及所有的软件到新的平台。例如,当 IBM 转移较旧的 32/48 比特“IMPI”指令集到 64位 PowerPC(IMPI 完全不像 32位 PowerPC,所以这比从 32位版本的指令集转移到相同指令集的 64位版本的规模还要庞大)。
64位架构无疑可应用在需要处理大量数据的应用程序,如数字视频、科学【和谐你妹啊】运算、和早期的大型数据库。在其它工作方面,其 32位兼容模式是否会快过同等级的 32位系统,这部分已有很多争论。在 x86-64 架构(AMD64 和 Intel 64)中,主要的 32位操作系统和应用程序,可平滑的运行于 64位硬件上。
Sun 的 64位 java 虚拟机的启动速度比 32位虚拟机还慢,因为 Sun 仍假定所有的 64位机器都是服务器,而且只有为 64位平台实现“服务器”编译器(C2)。[1]“客户端”编译器(C1)产生较慢的代码,不过编译较快速。所以尽管在 64位 JVM 的 Java 程序在一段很长的周期会运行的较好(一般为长时间运作的“服务器”应用程序),它的启动时间可能更久。对于短生命期的应用程序(如 Java 编译器 javac)增加启动时间可控制运行时间,使 64位的 JVM 整体变慢。
应当指出,在比较 32位和 64位处理器时,速度并不是唯一的考量因素。应用程序,如多任务、应力测试(stress testing)、簇(clustering)(用于HPC)可能更适合 64位架构以正确部署。为了以上原因,64位簇已广泛部署于大型组织,如 IBM、Vodafone、HP、微软。

I. 如何判断一个程序是64位的还是32位的

1.
首先,如果你使用的是64位的电脑,你可以尝试直接运行一下你的exe文件,然后打开任务管理器,一般来说进程信息后面标有32位(32bit)字样的都是32位的应用程序;而如果没有标记的,则不能判断是32位的还是64位的,只能说是64位程序的可能性更大。
如果你使用的是32位的电脑,则可以运行的程序一定是32位的;而不可以运行的程序可能是64位的,也可能是程序存在问题或系统存在问题导致不能运行。
2.打开windows自带的“记事本”,并使用记事本直接打开你的exe文件。一定会出现一堆乱码。不要着急,只要看第二行即可,第二行开头不远处有PE两个字母,再后面两个空格后第三个字符就是标记了,如果是字母L的话,就是32位应用程序,如果是d?就表示是64位应用程序。
3.如果有更高级的文本编辑器,比如Notepad++或者我使用的NotePad2之类的,直接打开exe文件可以显示出“不可打印的字符”,我们看到第三行那个PE后面跟了两个NUL就是空字符的意思,后面的字符就是标记了,还是一样的,L表示32位,d?表示64位。

J. C语言编程需要注意的64位和32机器的区别

如果用 MS VC++ 编译器,程序开始 加上 你编出的程序准备用在 windows 几上。
宏常量 WINVER 就是 视窗版本。
// windows 10 用下两行
#define WINVER 0x0A00
#define _WIN32_WINNT 0x0A00
// windows 8 用下两行
#define WINVER 0x0602
#define _WIN32_WINNT 0x0602
// windows 7 用下两行
#define WINVER 0x0601
#define _WIN32_WINNT 0x0601

热点内容
安卓与ios哪个适合做主力机 发布:2025-01-12 08:54:11 浏览:340
微软怎么关闭配置更新 发布:2025-01-12 08:34:23 浏览:316
wifi的有限的访问权限 发布:2025-01-12 08:34:14 浏览:609
cftp文件重命名 发布:2025-01-12 08:33:27 浏览:881
https的加密算法 发布:2025-01-12 08:19:15 浏览:653
数据库交 发布:2025-01-12 08:09:06 浏览:472
一台剪辑电脑要什么配置 发布:2025-01-12 07:50:16 浏览:12
android与java 发布:2025-01-12 07:50:12 浏览:498
打印机手机连接密码是什么 发布:2025-01-12 07:48:31 浏览:586
冒险岛2什么服务器 发布:2025-01-12 07:39:22 浏览:136