【无标题】

本文介绍了C语言中的基本数据类型,包括整数、浮点数、逻辑型和指针,以及它们在内存中占据的字节数。还讨论了不同语言对类型的处理方式,如C++和Java的强类型与JavaScript、Python的弱类型。此外,解释了补码表示法在负数中的应用,并展示了如何通过`sizeof`运算符获取类型占用的内存大小。文章最后举例说明了整数的输入输出格式以及如何寻找int类型的最大值。
摘要由CSDN通过智能技术生成

记录今天学的知识

c语言的类型

C语言的变量,必须在使用前定义,并且确定类型

C语言以后的两个方向发展:

1.c++/Java更强调类型,对类型的检查更严格。

2.JavaScript,python,PHP不看重类型,甚至不需要事前定义。

类型

整数:char,short,int,long,long long.

浮点数:float,double,long double.

逻辑:bool.

指针

自定义类型

类型名称:int,long,double

输入输出时的格式化:%d,%ld,%lf

表达的范围:char<short<int<float<double

内存中所占据的内存大小:1个字节到16个字节

内存中的表达形式:二进制数(补码),编码

sizeof

是一个运算符,给某个类型或变量在内存中所占据的字节数

比如,输入int的字节数

#include <stdio.h>

int main()
{
    printf("sizeof(int)=%ld\n", sizeof(int));
    return 0;
}

sizeof是静态运算符,它的结果在编译的时候就确定了

不要在sizeof里做运算,这些运算是不会做的

整数

char:一字节

short:两字节

int:取决于编译器,通常意义是“一个字”

long:取决于编译器,通常意义是“一个字”

long long:8字节

二进制负数

一个字节可以表达的数

00000000-11111111(0-255)

补码

考虑-1,我们希望-1+1——>0,如何能做到?

0——>00000000

1——>00000001

11111111+00000001——>10000000

11111111被当作纯二进制来看,是255,被当作补码来看,是-1

同理,对于-a,其补码就是0-a,实际上是2的n次方-a,n就是这类型的位数

因为int有32个比特,而char只有8个比特

int main()
{
    char c = 255;
    int i = 255;
    printf("c = % d, i = % d",c,i);
    return 0;
}

求int所表达的最大的一个整数

#include <stdio.h>
int main()
{
    int a = 0;
    while (a >= 0)
    {
        a++;
    }
    printf("int的最大整数是%d", a);
    return 0;
}

整数的输入输出

        只有两种形式

%d:int                //所有小于int的  char,short,int都采用%d输出

%u:unsigned

%ld:long long                //比int大的

%lu:unsigned long long

用%u来输出int最大的数+1

#include<stdio.h>
int main()
{
    int a = -1;
printf("%u", a);
return 0;
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值