C语言入门-day04

一、存储类型

1、auto--自动类型(系统自动分配区域)

        普通的局部栈变量,这种对象会自动创建和销毁
        一般隐藏auto的存储类型为自动存储类型,程序大多都是这种自动变量

        inti= 10;
        (auto) int i= 10;

2、register--寄存器类型

        特点:提高运行效率,cpu上的寄存器特别的少
        register float pi = 3.14;
        可能会申请失败,失败转为auto类型

3、extern

        (1) extern 可以在一个文件中去扩展全局变量的作用域

      (2)将全局变量的作用域扩展到其他文件

                a.在一个文件中定义一个变量,在另一个文件中用 extern + 变量名 去使用它
                        int b = 2;
                        extern b;
                b.在一个文件中用extern 修饰定义一个变量,在另一个文件中直接定义使用
                        extern int c = 3;
                        int c;

        (3)extern 修饰函数,此函数就成为了外部函数,可供其他文件调用
                 在定义或申明中的一个地方用extern修饰就可以

4、static  --  静态类型

        数据存放在全局数据区,但是作用域只能在本文件/本函数中使用

        所以可以在两个不同的文件/函数同时声明同名的static变量,但是是两个不同的变量

        (1) 修饰全局变量,将这个全局变量的作用域限制在本文件中

        (2)修饰函数,将这个函数的作用域限制在本文件中

          (3)  修饰局部变量,延长生命周期(有的系统是延长到程序结尾)

二、输入输出

1、格式输入输出函数

printf()
        功能:技照指定的格式向显示器输出数据

        格式:
                printf("格式控制串”,输出表);
                printf("m = %d\n",m);
        %d -- int 十进制
        %ld -- long
        %ld -- long long
        %x --十六进制
        %o --八进制
        %c -- 打印一个字符

        %s -- 打印字符串
        %p -- 打印地址
        %f -- float
        %lf -- double
        %u -- unsigned int
        %e -- 指数
        %g -- 打印浮点型的数,只打印有效数字

scanf() -- 格式输入函数

        功能:按照指定的格式从键盘读入数据,存入地址表中待定

        格式: scanf("格式控制串",地址表);

                scanf("%d",&m);

        "*"符: 用以表示,该输入项,读入后不赋予相应的变量,即跳过该输入值

scanf("%d %*d %d",&a,&b);

如果输入1 2 3,把1赋值给a,2会跳过,3赋值给b

宽度: 用十进制整数指定输入的宽度(字符数)

scanf("%5d”,&a);

输入12345678,只会将12345赋值给a,后面的部分被截取

scanf("%4d%4d",&a ,&b);

输入12345678,会将1234赋值给a,后面的5678赋值给b
int a = 123;

printf("%5d\n”,a);
    123

注意:
    1、遇到空格、tab、回车 代表结束
    2、在格式控制串里有什么符号,就必须要输入什么符号

    3、遇到非法输入也会结束

    4、scanf函数没有精度控制

scanf("%5.2f",&a);非法的

不能企图用此语句来输入小数为2位的实数

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值