c语言类型浅谈

C语言中的基本类型
//有符号类型 signed
char; //1byte
short; //2byte
int; //4byte
long int ; //4byte
long long; //8byte
//无符号类型
unsigned char; //1byte
unsigned short; //2byte
unsigned int; //4byte
unsigned long int; //4byte
unsigned long long; // 8byte
//浮点型
float; //4byte
double; //8byte
long doube; //c11 12byte//c99 8byte
//布尔型 //c语言中可能会用到#include<stdbool.h>头文件
bool; //1byte false true;
//空类型
void; //不能定义变量,可以定义指针

#include<stdio.h>
int main()
{
 printf("char型变量的大小为%d", sizeof(char));
 printf("short型变量的大小为%d", sizeof(short));
 printf("int型变量的大小为%d", sizeof(int));
 printf("long int型变量的大小为%d", sizeof(long int));
 printf("long long型变量的大小为%d", sizeof(long long));
 printf("unsigned char型变量的大小为%d", sizeof(unsigned char));
 printf("unsigned int型变量的大小为%d", sizeof(unsigned int));
 printf("unsigned long int型变量的大小为%d", sizeof(unsigned long int));
 printf("unsigned long long型变量的大小为%d", sizeof(unsigned long long));
 printf("float型变量的大小为%d", sizeof(float));
 printf("double型变量的大小为%d", sizeof(double));
 printf("long double型变量的大小为%d", sizeof(long double));
 printf("bool型变量的大小为%d", sizeof(bool));
 return 0;
 }

在这里插入图片描述

在了解了这方面的知识后可以很轻松的解决魔鬼数字127的问题

int main()
{
 char ch=0;
 for (;ch < 200;ch++)
 {
   printf("%d", ch);
 }
}

比如这个会输出在这里插入图片描述
在了解了类型之后会很轻松的解决这个问题,应为char是1byte当二进制数增加到0111 1111是屏幕将打印出127之后ch++对应的二进制会变为1000 000当用%d打印的时候会进行一个扩充所以打印出的数字就是-128,如此循环下去只能是无限输出了,有了现在的例子足以说明类型的重要性,小小数字的变化可能会引起大的错误。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值