1.signed 和 unsigned
c语言使用signed 和 unsigned 修饰字符类型和整型类型
signed int i;
signed char ch;
signed long int li;
signed double b; //不能修饰浮点数
signed float b; //"signed": 不能与类型 "double" 一起使用
signed 修饰的类型,有正负号,即有正负之分
unsigned修饰的类型,即时无符号类型,让编译器认为它没有符号,只表示非负整数,-1被看作一个很大正数,原理是最高位符号当成数值位
unsigned的一个好处是,表示的最大的数变大了一倍,如char类型的范围是-128~127,unsigned char 范围是 0~255,但是大的数一般都用字符串表示,这个好像没用,哈哈哈
unsigned int i 是可以省略int,以下表示也是可以的
unsigned i;
注意char类型的正负号一般是由编译器决定的,char不等同于signed char ,它有可能是signed char 也可能是unsigned char
2. 数据类型的取值范围
limits.h这个头文件说明整数的范围
float.h 这个头文件说明浮点数的范围
#define SCHAR_MIN (-128) //char类型
#define SCHAR_MAX 127
#define UCHAR_MAX 0xff //255
#define SHRT_MIN (-32768) //short类型
#define SHRT_MAX 32767
#define USHRT_MAX 0xffff
#define INT_MIN (-2147483647 - 1) //int类型
#define INT_MAX 2147483647
#define UINT_MAX 0xffffffff
#define LONG_MIN (-2147483647L - 1) //long类型
#define LONG_MAX 2147483647L
#define ULONG_MAX 0xffffffffUL
#define LLONG_MAX 9223372036854775807i64 //long long 类型
#define LLONG_MIN (-9223372036854775807i64 - 1)
#define ULLONG_MAX 0xffffffffffffffffui64
#define FLT_MAX 3.402823466e+38F //float
#define FLT_MIN 1.175494351e-38F
#define DBL_MAX 1.7976931348623158e+308
#define DBL_MIN 2.2250738585072014e-308
3. 变量
3.1变量的创建
c语言中可以变化的量叫作变量,不能变化的量叫作常量
data_type name;
| |
| |
数据类型 变量名
int age; //整型变量
char ch; //字符变量
double weight; //浮点型变量
变量在创建的时候就给⼀个初始值,就叫初始化。
int age = 18;
char ch = 'w';
double weight = 48.0;
unsigned int height = 100;
3.2变量的分类
全局变量:没有用大括号括起来的变量
局部变量:用大括号括起来的变量