c语言常数类型
A. 在c语言中整型常数可用十进制、八进制和______进制三种数制表示。
在C语言中整型常数可用十进制、八进制和十六进制三种数制表示。
1、八进制整常数必须以0开头,即以0作为八进制数的前缀。数码取值为0~7。八进制数通常是无符号数。
(1)以下各数是合法的八进制数:
015、0101、0135777。
(2)以下各数不是合法的八进制数:
252(无前缀0)、0386(包含了非八进制数码)、-0127。
2、十六进制整常数的前缀为0X或0x。其数码取值为0~9,A~F或a~f。
(1)以下各数是合法的十六进制整常数:
0X2A(十进制为42)、0XA0 (十进制为160)、0XFFFF (十进制为65535)。
(2)以下各数不是合法的十六进制整常数:
5A (无前缀0X)、0X3H (含有非十六进制数码)。
3、十进制整常数没有前缀。其数码为0~9。
(1)以下各数是合法的十进制整常数:
235、-528、65535、1627。
(2)以下各数不是合法的十进制整常数:
023 (不能有前导0)、23D (含有非十进制数码)。
(1)c语言常数类型扩展阅读:
C语言的数据类型包括:整型、字符型、实型或浮点型(单精度和双精度)、枚举类型、数组类型、结构体类型、共用体类型、指针类型和空类型。
C语言包含有各种控制语句仅有9种,关键字也只有32个,程序的编写要求不严格且多以小写字母为主,对许多不必要的部分进行了精简。
实际上,语句构成与硬件有关联的较少,且C语言本身不提供与硬件相关的输入输出、文件管理等功能,如需此类功能,需要通过配合编译系统所支持的各类库进行编程,故C语言拥有非常简洁的编译系统。
C语言的运算非常灵活,功能十分丰富,运算种类远多于其它程序设计语言。在表达式方面较其它程序语言更为简洁,如自加、自减、逗号运算和三目运算使表达式更为简单,但初学者往往会觉的这种表达式难读,关键原因就是对运算符和运算顺序理解不透不全。当多种不同运算组成一个运算表达式,即一个运算式中出现多种运算符时,运算的优先顺序和结合规则显得十分重要。
B. C语言中的常量有那些类型
整体上分两类,一类是整型常量,一类是浮点型常量。细致上分,整型常量还包括字符常量、字符串常量。
①. 整型常量 如6,27,-299
②. 浮点型常量 如5.43,-2.3,5.43F(单精度)、2.3f(小写的f也可以)
③. 字符常量 如‘6’,‘a’,L'中'(宽字符常量)
④. 字符串常量 如“6”,“男”,“nanabc”
C. C语言长整型常数,什么是长整型常数
长整型数是相对于基本整型数而言的,一般它占用的存储空间是基本整型数的2倍。具体大小随不同的编译器而不同。如果它的存储空间是k个字节,可存储数的范围是-2^(8k-1)~+2^(8k-1)-1。
整型变量可分为以下几类:
1.基本型
类型说明符为int,根据计算机的内部字长和编译器的版本,在内存中可能占2或4个字节(通常分别在16位机和32位机上),其取值为基本整常数。
2.短整型
类型说明符为short int或short,在内存中占2个字节,其取值为短整常数。
3.长整型
类型说明符为long int或long,在内存中占4个字节,其取值为长整常数。
4.64位整型(非ANSI标准)
类型说明符为__int64、long long int或long long,在内存中占8个字节,其取值为64位整常数。
5.无符号型
类型说明符为unsigned。它可以单独使用代表unsigned int,也可以作为前缀,都表示无符号整数,即永远为非负的整型变量,大于0的数据范围约扩大为原来的2倍。各种无符号类型量所占的内存空间字节数与相应的有符号类型量相同。但由于省去了符号位,故不能表示负数。下表列出了Turbo C中各类整型量所分配的内存字节数及数的表示范围。
整数的后缀
可以用后缀“L”或“l”来表示长整型数。例如:
十进制长整型数:158L (十进制为158)、358000L (十进制为358000);
八进制长整型数:012L (十进制为10)、077L (十进制为63)、0200000L (十进制为65536);
十六进制长整型数:0X15L (十进制为21)、0XA5L (十进制为165)、0X10000L (十进制为65536)。
长整型数158L和基本整型数158 在数值上并无区别。但对158L,因为是长整型数,C编译系统将为它分配4个字节存储空间。而对158,因为是基本整型,只分配2 个字节的存储空间。因此在运算和输出格式上要予以注意,避免出错。
无符号数也可用后缀表示,整型数的无符号数的后缀为“U”或“u”。例如:358u、0x38Au、235Lu均为无符号数。
前缀,后缀可同时使用以表示各种类型的数。如0XA5Lu表示十六进制无符号长整型数A5,其十进制为165。
D. C语言中常量的默认类型
C语言中的常量一般分为两类整型常量和浮点数常量。
整型常量的默认数据类型是int类型,即有符号整型。
浮点数常量的默认类型是double类型,即长浮点数类型。
注意:整型常量中有一类特殊的常量,即字符常量,有字符常量,引申出字符串常量。字符常量的默认类型是char类型,即有符号字符类型,字符串常量的类型,一般为const int类型。同时,不同的编译器,略有不同,但一般遵守该规则。
E. C语言中的常量有哪些呢
1、C语言对二进制并没有并没有规定具体的格式。不过在部分编译器中厂家会自行扩展一些二进制格式,比如0b0100表示10进制4。设计良好的C语言代码能够让编译器编译出预期的机器指令,并且在目标机器上被正确执行。
3、C语言中具有特殊含义的英文单词,通常用于构成语句,存储数据,定义数据类型等。C中有某些字符代表特殊含义,例如前缀为反斜杠,换行符( n)或制表符( t)。
F. C语言中整型常量有几种形式,它们是如何表示的
在C语言中,整型常量有三种书写形式:
(1) 十进制整数。十进制整数就是通常整数的写法。例如:11、15、21等。
(2) 八进制整数。八进制整数的书写形式是在通常八进制整数的前面加一个数字0。例如:00、0111、015、021等,它们分别表示十进制整数:0、73、13、17
(3) 十六进制整数。十六进制整数的书写形式是在通常十六进制整数的前面加0x。例如:0x0、0x111、0x15、0x21等,它们分别表示十进制整数0、273、21、33。
注意,整型常量前面没有+或者-,-10其实是一元-运算符和操作数10,同样整型常量的十进制表示并没有0,单独写一个0其实是一个八进制常量。
(6)c语言常数类型扩展阅读
转换为整型
要明示地将一个值转换为 integer,用 (int) 或 (integer)强制转换。不过大多数情况下都不需要强制转换,因为当运算符,函数或流程控制需要一个 integer 参数时,值会自动转换。您还可以通过函数 intval() 来将一个值转换成整型。
1、从布尔值转换
FALSE 将产生出0(零),TRUE 将产生出1(壹)。
2、从浮点数转换
当从浮点数转换成整数时,数字将被取整(丢弃小数位)。
注意:如果浮点数超出了整数范围(通常为 +/- 2.15e+9 = 2^31),则结果不确定,因为没有足够的精度使浮点数给出一个确切的整数结果。在此情况下没有警告,甚至没有任何通知!
注:在 Linux 下返回结果是最小负数(-214748),而在 Windows 下返回结果是零(0)。
【以下以C/C++语言为例,陈述一下整型的知识】:
a、C/C++对整型长度的规定是为了执行效率,将int定义为机器字长可以取得最大的执行速度;
b、C/C++中整型包括:int,char和enum,C++中还包含bool类型,C99中bool是一个宏,实际为_Bool;
c、C和C++对enum的规定有所不同,这里不描述;
d、修饰整型正负的有signed和unsigned,对于int默认为signed;
e、修饰 int 大小的有short和long,部分编译器还扩展了一些更长的整型,比如long long和__int64, C99中增加了long long和unsigned long long;
f、int 的长度与机器字长相同,16位的编译器上int长16位,32位的编译器上int长32位;
g、short int的长度小于等于int 的长度,注意它们可能长度相等,这取决于编译器;
h、long int 的长度大于等于int 的长度,注意它们可能长度相等,这取决于编译器;
i、char 的长度应当可以包容得下一个字符,大部分系统中就是一个字节,而有的系统中可能是4个字节,因为这些系统中一个字符需要四个字节来描述;
j、char 的正负取决于编译器,而编译器的决定取决于操作系统,在不同的编译器中char可能等同于signed char,也可能等同于unsigned char。
参考资料来源:网络-整型
参考资料来源:网络-整型常量
G. 在C语言中整型常数可用十进制、八进制和______进制三种数制表示。
在C语言中整型常数可用十进制、八进制和
十六
进制三种数制表示。
八进制数表示形式为:以0开头的整型常数,如0666,0400。
十六进制数表示形式为:以0x或0X开头的整型常数,其中10-15的数用A-F(a-f)表示,如:0x80,0X7F,0xcd。
PS:当用scanf()函数输入整型变量时,若按八进制,则格式串为%o,若按十六进制,则格式串为%x,按十进制,则格式串为%d。当然,无论哪种形式输入,最终存储到变量中的数据,都是按该数的二进制补码进行数据存放的。