格式化输入输出、数据类型//日期:2018.07.13.

 

 

 

 

 

今日学习任务

 

1、了解C 语言特点(优缺点、嵌入式开发中的地位,如何学习语言编程)

2、了解基本数据类型的定义及输入输出;(内置类型)

3、掌握字节长度与取值范围;(计算机存储数据的方式、sizeof 的使用)

4、熟练掌握指针的定义与使用;(对应内存空间与指向内存空间)

今日任务完成情况

 

(详细说明本日任务是否按计划完成,开发的代码量)

本日任务基本按计划完成,代码开发量30行;

今日开发中出现的问题汇总

 

一. 嵌入式开发为什么选择C语言?

嵌入式开发操作系统内核是用C语言开发的;

(1) C语言运行速度快(效率高)

(2) C语言能够访问硬件

(3) 移植性好(适应各种平台)

二. 面向过程(结构)VS 面向对象

(1) 代码的复用性

(2) 代码的维护性

(3) 代码的可扩展性

三. 数据类型

1.定义内置类型变量

2.输入 与 输出(scanf,printf,getchar,putchar)

3.字节长度 和 取值范围

4.无符号 和 有符号的区别

5.变量的三大特点(内存分布图)

四. 输入输出函数【printf/scanf函数】

     printf:

1. 格式化输出函数

2. int printf(“const char*format*”,...);

3. ... 可变参数列表

4. 缓冲区(缓冲区的作用与类型)

           缓冲区:不对原始数据操作

5. 使用技巧(颜色等)

6. 使用

          printf(“格式化+占位符”,可变参数列表);

    scanf:

1. 格式化输入函数

2. int scanf(“const char*format*,...”)

3. 出现段错误(非法的地址访问)

4. scanf 缓冲区的垃圾处理问题

       \n ,用getchar函数去除\n;

5. 使用

  scanf(“格式化+占位符”,变量地址);

五. 字节长度和取值范围

    8bit = 1 字节

    2 字节 = 半字 = 16 位

    4 字节 = 字 = 32位

    类型     字节数   无符号范围     有符号范围

    char       1        0 ~ 255           -128 ~ 127

    short      2       0 ~ 2^16         -2^15 ~ 2^15-1

    int          4

    long      4

    float      4

    double   8

六. 语言的分类

命令式语言:

1. 解释性语言(速度慢,需要中间虚拟机        翻译)

2. 运行语言(速度快)

符号式语言:人工智能(速度最快)

            Tensorflow

七. 机器码

   正数:原码 = 补码

   负数:补码 = 原码 除符号位取反 +1;

         原码 = 补码 除符号位取反 +1;

 

今日未解决问题

 

变量的三大特点(内存分布图)

今日开发收获

1、了解了机器对命令的识别(机器码的在机器中的运作)

2、更深刻的体会到了 输入 、输出 函数的使用方法简单原理;

3、了解C 语言特点(优缺点、嵌入式开发中的地位,如何学习语言编程)

4、了解基本数据类型的定义及输入输出;(内置类型)

5、掌握字节长度与取值范围;(计算机存储数据的方式、sizeof 的使用)

 

自我评价

 

(是否按开发规范完成既定任务,需要改进的地方,与他人合作效果等)

 

 

 

//输入各类型数据后输出

#include <stdio.h>

typedef  int Int;

typedef  char Char;

typedef  double Double;

typedef  float Float;

 

Int main()

{

    Int i_num;

 

    Char c_ch;

 

    Double d_num;

 

    Float f_num;

 

    printf("Please input i_num(int) = ");

    scanf("%d",&i_num);

    

    getchar();

    printf("Please input c_ch(char) = ");

    scanf("%c",&c_ch);

 

    getchar();

    printf("Please input d_num(double) = ");

    scanf("%lf",&d_num);

 

    getchar();

    printf("Please input f_num(float) = ");

    scanf("%f",&f_num);

 

   // scanf("%d %c %lf %f",&i_num,&c_ch,&d_num,&f_num);

 

    printf("Output: i_num = %d    c_ch =  %c     d_num =  %lf     f_num =  %f  \n",i_num,c_ch,d_num,f_num);

 

    return 0;

}

 

 

 

 

 //计算各个数据类型的字节长度

#include <stdio.h>

typedef  int Int;

typedef  char Char;

typedef  double Double;

typedef  float Float;

typedef  short Short;

typedef  long Long;

 

int main()

{

     printf("int len = %d\n",sizeof(Int));

 

     printf("char len = %d\n",sizeof(Char));

     

     printf("short len = %d\n",sizeof(Short));

 

     printf("long len = %d\n",sizeof(Long));

 

     printf("float len = %d\n",sizeof(Float));

 

     printf("double len = %d\n",sizeof(Double));

     return 0;

}

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值