C语言中32位有符号整数如何定义

发布网友 发布时间:2022-04-23 09:37

我来回答

5个回答

热心网友 时间:2023-10-09 17:33

根据计算机系统、编译系统的不同,32位有符号整数的定义会略有差异,通常的做法是把长整型(long)数据定义为32位,int型可以是16位,也可以是32位。

C语言中没有具体规定各类数据所占的字节数,只要求long型数据长度不短于int型,short型不长于int型。具体如何实现,由各计算机系统自行决定。

例如在Turbo C++中,int型和short型数据都是16位的(指二进制位,下同),而long型数据是32位的。而Visual  c++6.0的int型数据或是long型数据都是32位的,其short型数据分配的是16位。

扩展资料

整型数据分类:

char:字符型数据,属于整型数据的一种,占用一个字节

unsigned char:无符号字符型数据,属于整型数据的一种,占用一个字节

short:短整型数据,属于整型数据的一种,占用两个字节

unsigned short:无符号短整型数据,属于整形数据的一种,占用两个字节

int:整型数据,属于整型数据的一种,占用四个字节

unsigned int:无符号整型数据,属于整型数据的一种,占用四个字节

long:长整型数据,属于整型数据的一种,占用四个字节

unsigned long:无符号长整型数据,属于整形数据的一种,占用四个字节

参考资料来源:《C语言程序设计(第三版)》谭浩强 著  清华大学出版社   第3章 数据类型 、运算符与表达式  3.3 整型数据

参考资料来源:百度百科--整型数据

热心网友 时间:2023-10-09 17:34

根据计算机系统、编译系统的不同,32位有符号整数的定义会略有差异,通常的做法是把长整型(long)数据定义为32位,int型可以是16位,也可以是32位。

C语言中没有具体规定各类数据所占的字节数,只要求long型数据长度不短于int型,short型不长于int型。具体如何实现,由各计算机系统自行决定。例如在Turbo C++中,int型和short型数据都是16位的,而long型数据是32位的。而Visual  c++6.0的int型数据或是long型数据都是32位的,其short型数据分配的是16位。

C语言是一门面向过程、抽象化的通用程序设计语言,广泛应用于底层开发。C语言能以简易的方式编译、处理低级存储器。C语言是仅产生少量的机器语言以及不需要任何运行环境支持便能运行的高效率程序设计语言。

尽管C语言提供了许多低级处理的功能,但仍然保持着跨平台的特性,以一个标准规格写出的C语言程序可在包括一些类似嵌入式处理器以及超级计算机等作业平台的许多计算机平台上进行编译。

扩展资料:

C语言特点:

1、广泛性。C 语言的运算范围的大小直接决定了其优劣性。C 语言中包含了34种运算符,因此运算范围要超出许多其它语言,此外其运算结果的表达形式也十分丰富。此外,C 语言包含了字符型、指针型等多种数据结构形式,因此,更为庞大的数据结构运算它也可以应付。

2、简洁性。9 类控制语句和32个KEYWORDS是C语言所具有的基础特性,使得其在计算机应用程序编写中具有广泛的适用性,不仅可以适用广大编程人员的操作,提高其工作效率,同 时还能够支持高级编程,避免了语言切换的繁琐。

3、结构完善。C语言是一种结构化语言,它可以通过组建模块单位的形式实现模块化的应用程序,在系统描述方面具有显著优势,同时这一特性也使得它能够适应多种不同的编程要求,且执行效率高。

参考资料来源:

百度百科-c语言

百度百科--整型数据

热心网友 时间:2023-10-09 17:34

C语言的有符号整数有char, short, int, long四种常用类型。
要定义32位有符号整数,是和编译平台有关的。其中可能为32位的情况为:

16位编译器: long
32位编译器: int, long
位编译器: int
另,位编译器有可能将long也定义为32位,但也有可能为位。

所以需要区分平台来定义32位有符号整数。
除单片机外,已经不存在16位编译器,所以大多数情况下可以用int来定义32位有符号整数。

热心网友 时间:2023-10-09 17:35

C语言中signed是有符号,unsigned是无符号的,默认是有符号signed型的,所以32位有符号是
[signed]long[int],方括号中的可以省略,也简写为:long。

热心网友 时间:2023-10-09 17:35

综合一下吧:unsigned long i 或者 long i 。

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com