嵌入式学习心得(day2)

C 语言

1.基础

       1.基础数据类型,运算符,表达式

       2.常用输入输出函数

       3.流程控制

2.重点

       1.数组

       2.函数

       3.指针

3.难点

       1.结构体

       2.链表

       3.内存管理

基础知识

1.进制转换:2(B) 8(O) 10(D) 16(H)

        进制数对应的值=[对应位*对应位权值【进制数的当前位数*几进制的(位数-1次方))】之和  从右往左数

       通常0开头一组数表示8进制,0X开头表示16进制

       eg:077=63         0X29=41

      八进制对应二进制三位,十六进制对应二进制四位

      十进制快速转换二进制 128 64 32 16 8 4 2 1 凑

2.程序在C语言中运行方式

     CPU由运算器和控制器构成

程序在外存中,造价便宜空间大,关机后可保存

程序运行时占用内存

计算机内部存储采用二进制,本质式高低电平。

3.负数在计算机中存储采用补码运算,正数存储它本身。

       负数补码运算:原码 反码 反码加一得到补码 分配内存

4.gcc编译流程:gcc filename.c

  1. 预处理

处理和#相关的代码

头文件 宏定义替换 条件编码

eg:#include<stdio.h>

        #define M 100

        #if #elif #else …

  1. 编译

将C语言程序编译成汇编代码

    gcc -S filename.c -o filename.s

  1. 汇编

将汇编代码编译成二进制代码

    gcc -c filename.c -o filename.o

  1. 链接

                将多个二进制代码链接成为一个可执行程序

               gcc filename.c -o filename

 1.基本数据类型,运算符,表达式

  1. 基本数据类型;                    (一个字节八位二进制数)

        a.整形数据又分为无符号和有符号数

                short(默认为有符号signed short)

                short(短整型占两个字节)

                int(整形四个字节)

                long(长整型八个字节)

        b.浮点型数据float(单精度浮点数精确到小数点后6-8位) double(双精度精确到12-14位)【和整数存储方式完全不同】没有无符号有符号的概念存储时分为三部分

0

1000 0010

00011 0000 0000 0000 0000 00

符号位

八位指数位

尾数位32位

                float:一个符号位,八个指数位,  二十三位尾数位

                double 一位符号位,十一位指数位,五十二位尾数位

                double 一位符号位,十一位指数位,几位尾数位

                float (四个字节)

                double(八个字节)

        c.字符型char,void  存储形式为a-z A-Z #&¥?等符号

                char(一个字节)            存储字符对应的ASCII码对应数值的二进制

                void(一个字节)

        d.逻辑型(泊尔类型)bool

                占内存空间一个字节,至于表示只有真和假(1 0)两个值。

                注意:在C语言中所有的非0值为逻辑真值,0为逻辑假值

        e.缺省类型(void)

               搭配函数与指针使用

     2.构造数据类型

         结构体

         共用体

        枚举类型

  1. 操作数据对象:变量和常量

        常量:程序运行过程中值不变的量,

        变量:程序运行的过程中可以发生改变的量

        表达式:由一个或者多个运算符连接的

 a.整形常量:默认为int类型

     100         int

     100l        long类型

     100u       unsigned int

     100ul      unsigned long

b.整形变量

      使用前先对变量进行定义

      变量名可以由数字,字母,下划线构成,不能用数字开头

      变量名不能与c语言关键字重名

      变量名最好是见名知意

       变量具有存储空间与值域范围

c.浮点型常量:默认为double类型

         3.1415

         3.1415f

d.浮点型变量

e.字符型常量

 f.字符型变量

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值