导航:首页 > 源码编译 > 编译器位数

编译器位数

发布时间:2022-02-05 21:47:58

❶ C语言数据类型所占字节是和运行的机器位数有关还是编译器有关

1)C语言一般指的是ANSI C的标准,对应的处理器分别是32位和64位的。
2)类型分为内置类型和自定义类型(非内置类型)
内置类型指的是无需声明就可使用的类型,比如char,double,int等。
自定义类型指的是使用前必须声明的,如struct StructName{};结构类型,int a[5];数组类型以及enum Color{};枚举类型等。未经声明的类型不可使用
3)ANSI C只对内置类型的大小进行了规范:
char |double| folat |int |long int| pointer
64bits 1 8 4 4 8 8
32bits 1 8 4 4 4 4
从上表可以看出,对于前三者,大小是统一的,只有long int 和pointer(指针)在不同的机器上占用了不同的大小。他们的规则是,long int和pointer的大小等于机器位长(8位一个字节).最后说明一点,unsigned的关键字和类型组合和该类型的大小相同,因为有符号和无符号只对编译器有效,机器对他一无所知。

❷ 怎样查看自己电脑的编译器是多少位的

编译器有好多种,每个语言都有,一般都有-v或者--version命令可以看版本信息,包括生成的代码对应的机型(target),例如:Target: x86_64-w64-windows-gnu 就是生成64位的x86-64机器码,编译时可以靠-m32等命令控制.


至于编译器本身,那跟你下载时的版本有关,如果你确实需要了解类似GCC本身是多少位的,可以这样:

linux下:

filexxx#xxx代表程序名

例如:

[cosmia@excalibur~]$filesqlite3.i686sqlite3.x86_64
sqlite3.i686:ELF32-bitLSBexecutable,Intel80386,version1(SYSV),dynamicallylinked(usessharedlibs),forGNU/Linux2.6.32,BuildID[sha1]=,stripped
sqlite3.x86_64:ELF64-bitLSBexecutable,x86-64,version1(SYSV),dynamicallylinked(usessharedlibs),forGNU/Linux2.6.32,BuildID[sha1]=,stripped


windows下:

用7zip打开那个.exe文件,看cpu信息


详细参考方法:

http://www.hu.com/question/23027723

❸ dev C++是多少位的编译器,,,,

对 windows下的各种编译器都是32位精读的。int最大值是21几几几那个十位数。如果要32767 就换成short int就好

❹ C++ 编译器自动保留6位有效数字,怎么输出所有的位数

看你要求的
是多少,选择合适的类型保存数据,float精度就是6位小数,想取得更高的精度使用double存储,不要用float
double
v
=
1.1
*
1.1
*
1.1
*
1.1;

❺ sizeof(long)是4还是8的不同是由不同编译器决定的,还是操作系统的位数,还是电脑的位数,还是C的标准

这个是由编译器决定的,有的是32位编译器,有的是64位编译器,有的是标准C编译器,有的是C++编译器,都有可能不同。

❻ C语言各类型数据的位数是多少

这个跟系统有关的,你可以通过sizeof各个类型来看字节数,从而算出位数。具体可以用以下代码看
#include<stdio.h>
void main()
{
printf("%d\n", sizeof(int));
printf("%d\n", sizeof(long int));
printf("%d\n", sizeof(float));
printf("%d\n", sizeof(double));
}

一般我们用的32位系统是:
类型 字节数 位数 范围
int 4 32 -2147483648 ~ 2147483647
long 4 32 同上
float 4 32 -2^128 ~ +2^128,也即-3.40E+38 ~ +3.40E+38
double 6 64 -2^1024 ~ +2^1024,也即-1.79E+308 ~ +1.79E+308

❼ C中int所占用字节数是和它所用的编译器的位数有关,那么以C开发的javaphp存不存在这个问题呢

严格的说,是跟系统位数相关。java不存在这个问题,java试运行在虚拟机上,与平台无关。php我不太连接。
课本上的字节数一般都是按照32位机来的,严格的说,应该加上系统平台位数的限定..
中国的教材都那样...糊弄人的...

❽ 怎样用c语言编译器列出8位数的组合

#include<stdio.h>

voidpm(unsignedintbeg,constunsignedintn)//调用时,beg恒0,n为数字的位数。
{
inti;
staticcharstr[10]={0};
if(beg!=n)
for(i=0;i<10;i++){
str[beg]='0'+i;
pm(beg+1,n);
str[beg]=0;
}
elseputs(str);
}

intmain(intargc,char*argv[])
{
pm(0,5);//示例
pm(0,8);
return0;
}

❾ c语言数据长度16位和32位什么意思

楼上不要胡说!
>>是说16位的机器就是2个,32位是4个吗?
这句话说的不太对,
这个其实指的是编译器的位数,
对于16位编译器(例如,tc),int型占2个字节
对于32位编译器(例如,vc,gcc),int型占4个字节
这里指的是编译器的位数,不是cpu的位数

❿ 如何查看电脑上安装的visual studio 2010的编译器的配置是32位还是64位的

指针大小为4就是32位的,为8就是64位的。

工程属性里面可以选择:

阅读全文

与编译器位数相关的资料

热点内容
linuxvi下一个 浏览:973
安卓手机的应用锁怎么解 浏览:733
linux增加路径 浏览:845
sql身份证号最后四位加密 浏览:533
xp系统表格加密 浏览:854
光遇安卓军大衣什么时候上线 浏览:838
android应用商店图标 浏览:341
java计算圆的面积 浏览:643
应用编译优化recovery 浏览:577
域控命令n 浏览:258
php导出文件 浏览:13
谷歌地图网页版无法连接服务器地址 浏览:298
菜鸟工具在线编译python 浏览:858
栅格化命令有何作用 浏览:823
为什么压缩文件不能解压 浏览:311
足球app哪个软件好 浏览:96
产品经理逼疯程序员的一天 浏览:17
修改svn服务器ip地址 浏览:584
下列关于编译说法正确的是 浏览:246
java马克思 浏览:118