C语言二级备考1-1.1

变量

#include<stdio.h>
    int main(){
    int a;
    a=123;
    a=456;
}
  • int,它是 Integer 的简写,意思是整数。a 是我们给这块区域起的名字;当然也可以叫其他名字,例如 abc、mn123等。
  • =是一个新符号,它在数学中叫“等于号”,例如 1+2=3,但在C语言中,这个过程叫做赋值(Assign)。赋值是指把数据放到内存的过程。
  • a中的整数不是一成不变的,只要我们需要,随时可以更改。
  • 因为 a 的值可以改变,所以我们给它起了一个形象的名字,叫做变量(Variable)
  • int a;创造了一个变量 a,我们把这个过程叫做变量定义。a=123;把 123 交给了变量 a,我们把这个过程叫做给变量赋值;又因为是第一次赋值,也称变量的初始化,或者赋初值

    数据类型

    image-20230228094730679

    连续定义多个变量

    C语言支持多个变量的连续定义。

    int a, b, c;
    float m = 10.9, n = 20.56;
    char p, q = '@';

    数据的长度

    整数

    C语言通常使用int来定义整数。
    int 一般占用 4 个字节(Byte)的内存。
    如果想让整数占用更少的内存可以在 int 前边加 short,让整数占用更多的内存可以在 int 前边加 long。

    short int a = 1;
    short int b,c = 99;
    long int m = 102023;
    long int n, p = 562131;

    这样 a、b、c 只占用 2 个字节的内存,而 m、n、p 可能会占用 8 个字节的内存。
    也可以将 int 省略,只写 short 和 long,如下所示:

    short a = 10;
    short b, c = 99;
    long m = 102023;
    long n, p = 562131;

    整型的长度

    C语言并没有严格规定 short、int、long 的长度,只做了宽泛的限制:

  • short 至少占用 2 个字节。
  • int 建议为一个机器字长。32 位环境下机器字长为 4 字节,64 位环境下机器字长为 8 字节。
  • short 的长度不能大于 int,long 的长度不能小于 int。
    总结起来,它们的长度(所占字节数)关系为:
    2 ≤ short ≤ int ≤ long

    sizeof 操作符

    获取某个数据类型的长度可以使用 sizeof 操作符,如下所示:

    #include <stdio.h>
    int main()
    {
    short a = 10;
    int b = 100;
    
    int short_length = sizeof a;
    int int_length = sizeof(b);
    int long_length = sizeof(long);
    int char_length = sizeof(char);
    
    printf("short=%d, int=%d, long=%d, char=%d\n", short_length, int_length, long_length, char_length);
    
    return 0;//length是长度的意思
    }

    在win10下运行是这样效果:

    image-20230228113406202

在 64 位 Linux 和 Mac OS 下的运行结果为:
short=2, int=4, long=8, char=1

  • sizeof 用来获取某个数据类型或变量所占用的字节数,如果后面跟的是变量名称,那么可以省略( ),如果跟的是数据类型,就必须带上( )。
    需要注意的是,sizeof 是C语言中的操作符,不是函数,所以可以不带( )

    不同整型的输出

    使用不同的格式控制符可以输出不同类型的整数,它们分别是:

  • %hd用来输出 short int 类型,hd 是 short decimal 的简写;

  • %d用来输出 int 类型,d 是 decimal 的简写;

  • %ld用来输出 long int 类型,ld 是 long decimal 的简写。

    #include <stdio.h>
    int main()
    {
    short a = 10;
    int b = 100;
    long c = 9437;
    printf("a=%hd, b=%d, c=%ld\n", a, b, c);
    return 0;
    }

    注意:

  • 当使用%d输出 short,或者使用%ld输出 short、int 时,不管值有多大,都不会发生错误,因为格式控制符足够容纳这些值。

  • 当使用%hd输出 int、long,或者使用%d输出 long 时,如果要输出的值比较小(就像上面的情况),一般也不会发生错误,如果要输出的值比较大,就很有可能发生错误。

暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇