c语言基础—数据类型
来源:互联网 发布:软件行业就业方向 编辑:程序博客网 时间:2024/05/01 01:20
C语言中有四种基本数据类型—整型、浮点型、指针和聚合类型(数组和结构等)。其他类型由此四种派生而成。
1、 整数类型
整型包含:字符(char),整型(int),长整型(long)和短整型(short),都分为有符号(signed)和无符号(unsigned)两种。
按位数有short<=int<=long,其中short至少16位,long至少32位。因此虽然直观上会认为short比较短,long比较长,但实际上两者可能一样长,而int的位数则由编译器决定。因此在设计数值计算时,应该确定其位数,做好溢出处理。
字符char占用八位,设计的目的在于容纳字符数据,但本质上是小整型。char在用关键字signed/unsigned修饰的时候与其他几种整型有一个区别。一般,对int,long,short,当不用signed/unsigned修饰时,默认为signed,但char的默认值与编译器有关。
下表为不同类型的位数和范围
类型
占用位数
数值范围
char
8位
(一般只用0~127)
signed char
8位
-127~127
unsigned char
8位
0~255
(signed) int
16位或32位
—
unsigned int
同int
—
(signed) long (int)
不小于32位
-2147483647~2147483647
unsigned long (int)
同long
0~4294967295
(signed) short (int)
不小于16位
-32767~32767
unsigned short (int)
unsigned short (int)
0~65535
(signed) long long (int)
64位
范围太长
(unsigned) long long (int)
同long long
范围太长
一、整型变量的声明和初始化
整型变量的声明形式为: 关键字 变量名;(中间空格隔开)
如:
int a;
初始化则是在声明之后对变量赋初始值
如:
直接int a = 1;
或 int a;a = 1;
最常见的是按十进制赋值,也可按八进制和十六进制赋值,在数字前面加一个0则为八进制赋值,加0x或0X则为十六进制赋值。
当用八进制赋值时,数字不在0~7之间会提示错误,十六进制亦然。
如:
int a = 012;//8进制12,十进制为10。
inta = 0x11;//十六进制11,十进制为17。
inta = 018;//编译器提示错误。
计算机通过编码将特定的字符用特定的整数值来表示,一般采用ASCII码。因此对char类型的赋值有两种形式。一种是直接数字赋值,一种是用字符赋值,字符由’ ’括起来。
如:
chara = ‘A’;
chara = 96;//两者都是声明字符变量a,初始化为字符A。
chara;a = “X”;//错误,正确方式:a = ‘X’;
二、整型常量
当代码中用到如123这样的数字时,编译器以最小可容纳该数值的类型来存储相应数字。也可以通过一些后缀来指定存储类型。L(或小写l)后缀表明数字为long类型,U(或小写u)后缀表明数字为unsigned类型,两者可以组合使用。
如:
123U为unsigned int 类型
123UL为 unsigned long 类型
123ULL为unsigned long long 类型
字符常量一般以’单个字符’来表示。
2、 浮点型
浮点型包含float,double和long double类型,用来表示不同精度的小数。本文不做讨论。
3、 指针
变量的值在计算机的内存中占用一个特定的位置和相应大小的空间。内存与地址一一对应,因此,通过地址就能得到其上变量的值。指针是一种值为地址的数据类型。本文不做详细讨论。
4、 格式化输出
Printf()、scanf ()函数时与程序通信的I/O接口。调用printf()通过特定的转换说明符可以打印出相应的数据。
常用转换符:
转换说明
输出
%c
一个字符
%s
字符串
%d
有符号十进制整数
%u
无符号十进制整数
%o
无符号八进制整数
%x或%X
无符号十六进制整数
%p
指针
%f
十进制浮点数
%e或%E
浮点数的e-计数法,E-计数法
修饰符:
修饰符
说明
h
输出short类型。%hd,%hx,%hu分别为十进制short,十六进制short,十进制unsigned short
l
输出long类型。%ld,%lu分别输出 long int和unsigned long int
ll
输出long long类型。%lld,%llu,同上
#
输出进制格式。%#x,%#X,%#o分别输出0x,0X,0这三种进制的前缀
%数字
输出的位宽,%7输出为7位宽,数字向右对齐,数字为负时,相左对齐。
- c语言基础—数据类型
- c语言基础--数据类型
- c语言基础:数据类型
- C语言基础------------数据类型
- C语言基础——其他数据类型
- C语言基础—复杂数据类型
- C语言基础:C语言数据类型总结
- C语言基础之《数据类型》
- C语言基础之《数据类型》
- c语言的基础数据类型
- C语言基础及数据类型
- C语言基础--指针数据类型
- 【C语言基础】-01数据类型
- ——黑马程序员——C语言基础--数据类型
- 黑马程序员——C语言基础02—数据类型
- 黑马程序员——C语言基础---数据类型
- C语言之基础数据类型分析
- c语言基础数据类型及命名规范
- DM3730基于openglES的qt embedded配置步骤_20120502
- c语言基础—常量、变量及其属性
- mp4文件相关基本概念
- 设置图片重复
- php run.sh
- c语言基础—数据类型
- jxl 导入导出excel操作
- CMD输入路径包含空格
- c语言基础—运算符和语句
- Hibernate关联关系映射-----双向一对多/多对一映射配置
- oracle的(+)意思
- c语言基础—指针与数组
- Ural 1002 Phone number
- NDK(ngx_devel_kit)模块学习