C语言数据类型多种多样,常见的数据类型见下图: 数据在C语言中是以二进制形式存储的,二进制序列中第一位是符号位,符号位为0,表示正数;符号位为1,表示负数。无符号的,全都存储数据。
一、有符号整型
有符号整型的数据类型通常包括 short、int、long、long long 四种,因为是有符号类型,所以前面要加上 signed ,但是通常省略,所以也就是说在代码中直接打出 short、int、long、long long 就代表是有符号类型的。
(1) short(短整型)
short的数据类型大小是 2 字节,打印类型是 “%hd” ,使用格式如下:
#include <stdio.h>
int main(void)
{
short name = value;
scanf("%hd", &name);
printf("%hd", name);
return 0;
}
(2) int(整形)
数据类型大小是 4 字节,打印类型是 “%d” ,使用格式如下:
#include <stdio.h>
int main(void)
{
int name = value;
scanf("%d", &name);
printf("%d", name);
return 0;
}
(3) long(长整型)
数据类型大小是 4 字节,打印类型是 “%ld” ,使用格式如下:
#include <stdio.h>
int main(void)
{
long name = value;
scanf("%ld", &name);
printf("%ld", name);
return 0;
}
(4) long long(更长的整形)
数据类型大小是 8 字节,打印类型是 “%lld” ,使用格式如下:
#include <stdio.h>
int main(void)
{
long long name = value;
scanf("%lld", &name);
printf("%lld", name);
return 0;
}
二、无符号整形
无符号数用 unsigned 表示 ,只表示数据量,而没有正负,且无符号数最高位不是符号位,而是数的一部分,无符号数不可能是负数。
(1) unsigned short
数据类型大小是 2 字节,打印类型是 “%hu” ,使用格式如下:
#include <stdio.h>
int main(void)
{
unsigned short name = value;
scanf("%hu", &name);
printf("%hu", name);
return 0;
}
(2) unsigned int
数据类型大小是 4 字节,打印类型是 “%u” ,使用格式如下:
#include <stdio.h>
int main(void)
{
unsigned int name = value;
scanf("%u", &name);
printf("%u", name);
return 0;
}
(3) unsigned long
数据类型大小是 4 字节,类型是 “%lu” ,使用格式如下:
#include <stdio.h>
int main(void)
{
unsigned long name = value;
scanf("%lu", &name);
printf("%lu", name);
return 0;
}
(4) unsigned long long
数据类型大小是 8 字节,打印类型是 %llu ,使用格式如下:
#include <stdio.h>
int main(void)
{
unsigned long long name = value;
scanf("%llu", &name);
printf("%llu", name);
return 0;
}
三、字符型 (char)
字符型变量 (char) 用于存储一个单一字符,在 C 语言中用 char 表示,其中每个字符变量都会占用 1 个字节。 在给字符型变量赋值时,需要用一对英文半角格式的单引号 (’ ') 把字符括起来。 字符变量实际上并不是把该字符本身放到变量的内存单元中去,而是将该字符对应的 ASCII 编码放到变量的存储单元中。 char的本质就是一个1字节大小的整型。 打印类型是 “%c”, 使用格式如下:
#include <stdio.h>
int main(void)
{
char name = 'character';
scanf("%c", &name);
printf("%c", name);
return 0;
}
四、浮点型 (float、double)
浮点型默认为double型,如3.14、4.0 与 3.14D、4.0d 等价。单精度常量,需在数值后显式加后缀f或F如3.14f或4.0F等。
(1)单精度浮点型(float)
单精度浮点型的大小是 4 字节, 打印类型是 “%f” ,使用格式如下:
#include <stdio.h>
int main(void)
{
float name = value;
scanf("%f", &name);
printf("%f", name);
return 0;
}
(2)双精度浮点型(double)
双精度浮点型的大小为 8 字节, 打印类型是 “%lf” ,使用格式如下:
#include <stdio.h>
int main(void)
{
double name = value;
scanf("%lf", &name);
printf("%lf", name);
return 0;
}
(3)浮点数输出
#include <stdio.h>
int main(void)
{
float name1 = 5.0;
printf("%f\n", name1);
printf("%.2f\n", name1);
printf("%08.3f\n", name1);
double name2 = 5.0;
printf("%lf\n", name2);
printf("%.2lf\n", name2);
printf("%08.3lf\n", name2);
return 0;
}
现阶段学习这样了,学习更多后补充(?′?`?)
|