3.9-3.11学习笔记

3.9开工第一天,调整好状态迎接新学期.

在寒假发现如果真要做软件,不止知道更要会用,所以之后会提升自己代码量,尽量把学到的知识融入代码里。

知识点

数组指针和指针数组有什么区别?

指针数组:本质是数组,数组里的每个元素都是指针地址

数组指针:本质是指针,这个指针专门用来指向一个数组保存数组的首地址

笔试用指针数组存储 3 个整数的地址,遍历输出每个整数的值

复制代码
#include <stdio.h>

int main() {
    int num1 = 10, num2 = 20, num3 = 30;
    int *p_arr[3] = {&num1, &num2, &num3};
    for (int i = 0; i < 3; i++) {
        printf("p_arr[%d] 指向的值:%d\n", i, *p_arr[i]);
    }
    return 0;
}

用数组指针指向一个 int 数组,通过指针输出数组的所有元素

复制代码
#include <stdio.h>

int main() {
    int arr[3] = {100, 200, 300};
    int (*arr_ptr)[3] = &arr;
    for (int i = 0; i < 3; i++) {
        printf("数组元素[%d]:%d\n", i, (*arr_ptr)[i]);
    }
    return 0;
}

函数指针和指针函数有什么区别?

指针函数:本质是函数,这个函数的返回值是一个指针地址

函数指针:本质是指针,这个指针专门用来指向一个函数保存函数的入口地址

可以看出和数组大同小异

指针函数就不多说,只是函数返回的是地址如

复制代码
int *function()
{
    static int a = 10;
    return &a;
}

用static是防止函数执行完销毁变量

函数指针有点类似于C++里的多态,可以控制执行哪个函数

复制代码
#include <stdio.h>

int add(int a, int b) {
    return a + b;
}

int main() {
    int (*func_ptr)(int, int) = add;
    printf("调用结果1:%d\n", func_ptr(3, 5));   // 输出8
    printf("调用结果2:%d\n", (*func_ptr)(3, 5));// 输出8
    return 0;
}

数组名和指针的区别与联系是什么?

数据保存方面,数组保存的是数据,指针保存的是地址。数据访问数组访问是直接访问,指针是间接访问。指针多用于动态数据结构动态内存开辟。数据多用于存储统一的数据结构线性表等等

常量指针、指向常量的指针、指向常量的常量指针有什么区别?

常量+指针(const + *)也就是int const *p
不能通过指针来修改值

指针+常量(*+const)也就是int *const p

不能改变指针的指向,但是存储的值可以修改

指针和引用的异同是什么?如何相互转换?

指针是存储地址的独立变量,可空、可声明后赋值、能重绑定指向不同变量,支持多级指针;引用是变量别名,无独立内存,必须声明时绑定有效变量,不可空、不可重绑定,无多级引用。

什么是串口,RS232,RS485

串口通信使用TTl电平来发送数据,但是缺点明显,传输距离短,看抗干扰能力弱,等问题,于是出现RS232,用+12V和-12V来表示0或1,抗干扰能力变强传输距离也增加了但是12V来回切换,对元器件不友好,于是出现RS485,使用差分来表示0/1,不仅传输距离增加抗干扰能力强,usb数据线就是使用差分信号

这月计划

基础知识点还是继续积累

巩固驱动代码

(之前使用imx6ull开发版是跟着视频来写驱动代码,现在只记得零零散散的碎片。这次的rk3588没有教学视频,想通过rk3588手册和文档上来学习驱动代码,实现LED,按键,中断,pwm,iic,usb等常见外设)

相关推荐
CS创新实验室1 天前
算法、齿轮与硅基大脑:数值计算发展简史
人工智能·算法·数值计算
海石1 天前
1563分的简单题,可能就简单在能被暴力AC
算法·leetcode
海石1 天前
1400分的dp汗流浃背之【交替子数组计数】
算法·leetcode
奋发向前wcx1 天前
P2590 树的统计 题目解析
数据结构·算法·深度优先
imbackneverdie1 天前
AI4S不止于分子药物:以MedPeer为代表的科研基建打开产业新增量
大数据·人工智能·算法·aigc·科研·学术·ai 4s
额鹅恶饿呃1 天前
C语言中的数据结构和变量
c语言·数据结构·算法
运行时记录1 天前
prompt-optimizer skill
算法
万法若空1 天前
【数据结构-哈希表】哈希表原理
数据结构·算法·散列表
退休倒计时1 天前
【每日一题】LeetCode 437. 路径总和 III TypeScript
算法·leetcode·typescript
学逆向的1 天前
汇编——内存
开发语言·汇编·算法·网络安全