C语言复习(六)

其他类型

C语言还有一些从基本类型衍生的其他类型,包括数组、指针、结构和联合。

小节-关键字:

基本数据类型由 11 个关键字组成: int、long、short、unsigned、char、float、double、signed、
_Bool、_Complex 和 _Imaginary

有符号整型

表示正整数和负整数,

  • int 为系统给定的基本整数类型。C语言规定int 类型不少于 16位
  • short或 short int 最大的 short 整数小于或等于最大的int类型整数。C语言规定 short 类型至少占32位。
  • long long 或 long long int 该类型整数大于或等于最大的int 类型整数。C语言规定 long long 类型至少占 32位

无符号整型

无符号整型表示零或正整数。无符号整型表示方法

  • unsignedint
  • unsigned long
  • unsigned short

字符类型

打印出来的符号(A、&he1+)都是字符 char

布尔类型

C语言用 1表示 true,0 表示 false。 _Bool 类型是无符号int 类型

实浮点类型

  • float 可精确至少
    位有效数字

  • double 存储浮点数范围大,至少10位有效数字和更大指数

  • long long 存储浮点数 的范围比 double 更大,能把表示比 double 更多的邮箱数字和更大的指数。

类型大小

使用 sizeof()内置运算符 知道指定类型的大小。打印类型大小使用 %zd 占位符表示(C99)

1
2
3
4
5
6
7
8
9
10
11
12
13
#include <stdio.h>
int main(void)
{
printf("%zd \n",sizeof(int));
printf("%zd \n",sizeof(char));
printf("%zd \n",sizeof(long));
printf("%zd \n",sizeof(long long));
printf("%zd \n",sizeof(float));
printf("%zd \n",sizeof(double));
printf("%zd \n",sizeof(long double));
getchar();
return 0;
}

输出结果表示的是不同类型的字节,比如 char 一定为 1 字节 ,char 类型 为 16 位 ,double 为 64 位的系统中,sizeof 给出的 double 字节为 4。(4*16=64)

参数和陷阱

printf(),””里面的内容表示参数,一般参数都用 , 分割。一般注意,使用数据类型要判断具体使用哪一种,在使用 printf 还要注意参数匹配问题,有些会出现参数多了,参数少了,匹配的占位符与参数类型不同的等问题,会根据不同的编译器,报不同的错误!