C语言初阶(一)基本数据类型

一.数据类型

整型(整数):字符型(char)、短整型(short)、整型(int)、长整型(long)和长长整型(long long)

浮点型(小数): 单精度型(float)、双精度型(double)和长双精度型(long double)

1.获取类型大小

int n;
printf("%d",sizeof(int));
printf("%d",sizeof(n));

 2.各种类型的大小

3.字节

sizeof获得数据的单位是Byte(字节)

Byte(字节)是计量存储容量的一种计量单位,一个字节是8位二进制,可容纳256个数字。一个ASCII字符就是一个字节。

除字节外的存储容量单位:

①bit 计算机中的最小数据单位,1个Byte(字节)=8个bit(比特/位)

②word 计算机CPU一次操作处理实际数据最大位数,我们常说的32/64位就是计算机的字。 ③

③KB,MB,GB,TB

注:我们用B表示Byte(字节),用b表示bit(比特/位) 

4.输入输出格式化 (占位符)

char %c,short %hd,int %d,long %ld,long long %lld

float %f,double %lf,long double %Lf

二.整数类型 

1.无符号整型

整型有无符号(unsigned)和有符号(signed)两种类型,在默认情况下声明的整型变量都是有符号的类型(char有点特别),如果需声明无符号类型的话就需要在类型前加上unsigned。无符号整型和有符号整型的区别就是无符号类型可以存放的正数范围比有符号整型中的范围大一倍,因为有符号类型将最高位储存符号,而无符号类型全都储存数字。比如16位系统中一个int能存储的数据的范围为-32768~32767,而unsigned能存储的数据范围则是0~65535。在一些不可能取值为负数的时候,可以定义为unsigned,在一些底层的嵌入式编程的数据一般都是无符号的。

输入输出无符号整型格式

No.类型占位符
1char%u
2short%hu
3int%u
4long%lu
5long long%llu

2.整型类型选择 

①大多数情况下使用int

②如果int范围不够,使用long long

③避免使用long

④谨慎使用unsigned

 三.浮点类型

1.浮点数的范围 

inf : 正无穷大

-inf : 负无穷大 

nan : 不存在 

2.浮点类型没有无符号unsigned类型。 

3.浮点类型的选择

①大多数情况下使用double

②尽量不要使用float

③过程运算可以使用long double

四.字符类型 

 通常使用%c作为格式化占位符输入输出,有时也可以使用%d输出字符对应ASCII编码。

1.运算

 printf("%d",'a'); #输出的是字符的ASCII编码
 printf("%c",97);  #按字符打印

例:把字符123输出为数字123

#include<stdio.h>
int main(){
	char s[100];
	scanf("%s",&s);

	int n = 0;
	for(int i=0;'\0'!=s[i];i++){
		n=n*10+(s[i]-'0');
	}
	printf("%d\n",n);
}

五.数据转换

1.自动类型转换 

当运算符左右两边操作数的类型不一致时,会自动转换成较大类型。

  • 整型:charshortintlonglong long
  • 浮点型:intfloatdoublelong double

2.强制类型转换

语法:

(转换后的类型)值

例: 

printf("%d\n",(int)3.14);//输出为:3

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值