美文网首页
电商专业学习嵌入式软件开发第四十二天

电商专业学习嵌入式软件开发第四十二天

作者: 雨打梨花闭门寒 | 来源:发表于2017-03-15 22:43 被阅读0次
  • C项目第三天

今天已经做了第三天的项目了,第一天基本没进展,第二天才出来界面,然后就一直卡在链表这儿了,已经卡了一天了,王老师说明天会带着我们梳理一下。其次就是函数的调用有问题,不知道如何在一个没有main函数的文件中调用另一个没有main函数的文件,在单个文件中用main函数测试都没问题,也不知道能不能这么调用,明天再问一下老师。因为项目的进程有问题,今天王老师专门给我们补了一下对项目有帮助的知识点,这一次讲解主要从理解的角度让我们尽快理解为主,待会还要找两道之前老师讲的数组和结构体的题目练习一下。

函数:
1.函数的定义:
来源方式:1>自定义函数 2>C库的提供(libc.so libm.so//数学) 3>操作系统提供的函数 4>第三方函数(单位人写的)
实现步骤:
1>确定函数的功能(功能精良单一),知道函数干什么用
2>分析已知、未知(传参)
3>写出函数头
4>步骤化实现过程
5>写代码

2.函数调用
使用过程:(跳转到函数体执行代码)
函数体第一条语句执行前两个系统默认动作:
a.执行形参定义语句(形参的本质:变量定义)
b.将实参表达式赋值给对应形参
返回过程:(返回到调用语句处)
系统默认将回收形参所占用的内存空间

内存的作用:
1>存指令
2>存数据:数字(类型)
地址(类型)

所谓的指针实际上是一种数据类型,这种类型的变量空间里面存放的是另外一块内存空间的首地址。这样的变量被称为指针变量,有时候也称为指针

数据类型的作用:定义变量和作为函数返回值类型
数据类型:
1>sizeof
2>变量定义
3>相关运算
4>函数形参
5>函数返回值类型
数组不能作为函数返回值类型
只有内存里面的字节才称为地址
变量定义语句蕴含的三个基本步骤:
1>给变量分配空间
2>给空间命名
3>决定空间二进制位的含义
每个变量均具有4个属性:(待补齐)

基本数据类型
数组,指针
自定义数据类型:结构体,联合体
void

一.void 空类型
不能定义void类型的变量

1.sizeof
sizeof(void)错误
sizeof(void *)正确  viod类型的地址 32位机是4个字节
2.变量定义
void v;//错误
void *pv;//正确
3.相关运算:无
4.void类型不能作为函数形参的数据类型,但是void*可以
5.可以作为函数返回值类型:表示本次调用不需要返回任何值

基本数据类型(int short long char float double)

1.sizeof(32位机)
    int long:4  平台相关
    short:2
    float:4
    double:8
    char:1
2.三步理解法(三个步骤):
float f1;

位运算:
1.与.或.非.移位针对的是每一个二进制位
2.只针对无符号整型做位运算

数组:一种数据类型,该类型的变量空间里连续存放了N个相同类型(T)的元素(N为大于零的整型常量)

1.sizeof
    N*sizeof(T)
2.变量定义语句
    double arr[6];
    float arr2[3][4];
数组不能作为函数返回值。

老师总结的遇到数组的方法:
1.N维数组都看成一维数组,一维数组里面的元素都是N-1维的数组
2.数组名在表达式中单独出现表示下标为0的只读地址
3.数组作为函数形参完全等价于指向这个数组里面的元素的指针

结构体:一种自定义数据类型,该类型的变量空间里连续存放着好多个不同(也可以相同)类型的元素。

struct Data(int y;int m;int d);
struct A
{
    int a;
    float f;
};
struct A sta;

结构体变量名可以做赋值运算
对结构体变量名可以取地址

访问结构体变量的两种方法:
1.通过空间名称直接访问
2.通过地址间接访问

结构体类型虽然理论上可以做函数的形参,但是一般不这么做,万一数据大,耗费时间和空间,一般会返回地址。
结构体类型理论上也可以做函数返回值类型。

相关文章

网友评论

      本文标题:电商专业学习嵌入式软件开发第四十二天

      本文链接:https://www.haomeiwen.com/subject/idsrnttx.html